laravel day 3 section 2: 获取数据库数据

2019-02-15  本文已影响0人  妙啊啦

这里就比较有意思了,首先我不会介绍static 的调用function的问题,我会在下面写到这里的时候开始描述,所以请不要着急,我们还是一步步慢慢来,

********************************************** 这个是分割线 ************************************

获取数据

之前我们创建过一个controller,所有和这个controller里面相关的东西我们都是放在这controller,比如message controller里面,我们我们放post message 和 get message 的相关function.

这里我们将下面的代码放到message controller里面,并且return 一个view来作为显示页面,绵绵的with意味着我们将这个messages 传进了这个message 页面。

    public function getMessage(){
        $messages = Message::all();
        return view('messages')->with('messages', $messages);
    }

这里你看见了,我们使用了

Message::all()

这是什么意思呢,和前面的代码比较,我们在创建一个message的时候我们需要 new 一个 message,因为我们需要一个message 来帮助我们输入各种参数,可是这里,我们实在调用一个message对象里面的静态的(不会变的)function all(); 所以,结论就是,当我们需要调用一个class 的静态function,我们可以伸直不去生成一个对象,就可以直接调用这个function.

********************************************** 这个是分割线 ************************************

Message 页面

@extends('layout.layout'); 
@section('content')
<h2>message</h2>
@if (count($messages)>1) @foreach ($messages as $message)
<ul class="list-group">
    <li class="list-group-item">
        {{$message->name}}
    </li>
    <li class="list-group-item">
        {{$message->email}}
    </li>
    <li class="list-group-item">
        {{$message->message}}
    </li>
</ul>
@endforeach @endif
@endsection

创建一个message页面,输入上面的代码,
********************************************** 这个是分割线 ************************************

page controller : 一个更加方便的方式来控制页面的routing

这立说明一个很有趣的现象,那就是webapp.php里面controller的调用不需要引入controller
换聚nodejs里面的话就是,不需要import,就可以直接使用一个文件里面的东西,也就是全域

php artisan make:controller PageController

来生成一个controller

class PageController extends Controller
{
    public function getHome(){
        return view('home');
    }
}

webapp.php里面的代码如下

Route::get('/home', 'Pagecontroller@gethome');

这样就可以直接调用啦
********************************************** 这个是分割线 ************************************

laravel 前段active的使用

虽然我比较喜欢前后端分离,但是现在我们用laravel的时候,就需要了解navbar 中active的问题
逻辑是:laravel中根据url的参数来确定当前是不是active

<li class="{{Request::is('/home') ? 'activeClass' : ''}}"> 

这就是动态的加active

上一篇下一篇

猜你喜欢

热点阅读