Laravel 5框架学习之模型、控制器、视图基础流程
添加路由
Route::get('artiles','ArticlesController@index');
创建控制器
phpartisanmake:controllerArticlesController--plain
修改控制器
<?phpnamespaceApp\Http\Controllers; useApp\Article; useApp\Http\Requests; useApp\Http\Controllers\Controller; useIlluminate\Http\Request; classArticlesControllerextendsController{ publicfunctionindex(){ $articles=Article::all(); return$articles; } }
可以在浏览器中看到返回的JSON结果,cool!
修改控制器,返回视图
publicfunctionindex(){ $articles=Article::all(); returnview('articles.index',compact('articles')); }
创建视图
@extends('layout') @section('content') <h1>Articles</h1> @foreach($articlesas$article) <article> <h2>{{$article->title}}</h2> <divclass="body">{{$article->body}}</div> </article> @endforeach @stop
浏览结果,COOL!!!!
显示单个文章
添加显示详细信息的路由
Route::get('articles/{id}','ArticlesController@show');
其中,{id}是参数,表示要显示的文章的id,修改控制器:
publicfunctionshow($id){ $article=Article::find($id); //若果找不到文章 if(is_null($article)) { //生产环境APP_DEBUG=false abort(404); } returnview('articles.show',compact('article')); }
laravel提供了更加方便的功能,修改控制器:
publicfunctionshow($id){ $article=Article::findOrFail($id); returnview('articles.show',compact('article')); }
It'scool.
新建视图
@extends('layout') @section('content') <h1>{{$article->title}}</h1> <article> {{$article->body}} </article> @stop
在浏览器中尝试访问:/articles/1/articles/2
修改index视图
@extends('layout') @section('content') <h1>Articles</h1> <hr/> @foreach($articlesas$article) <article> <h2> {{--这种方式可以--}} <ahref="/articles/{{$article->id}}">{{$article->title}}</a> {{--这种方式更加灵活,不限制路径--}}<br> <ahref="{{action('ArticlesController@show',[$article->id])}}">{{$article->title}}</a> {{--还可以使用--}}<br> <ahref="{{url('/articles',$article->id)}}">{{$article->title}}</a> </h2> <divclass="body">{{$article->body}}</div> </article> @endforeach @stop
以上所述就是本文的全部内容了,希望能够对大家学习Laravel5框架有所帮助。