Laravel 5框架学习之模型、控制器、视图基础流程 |
|
添加路由 复制代码 代码如下: Route::get(artiles, ArticlesController@index); 创建控制器 复制代码 代码如下: php artisan make:controller ArticlesController --plain 修改控制器
<?php namespace App\Http\Controllers;
use App\Article;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class ArticlesController extends Controller {
public function index() {
$articles = Article::all();
return $articles;
}
}
可以在浏览器中看到返回的 JSON 结果,cool! 修改控制器,返回视图
public function index() {
$articles = Article::all();
return view(articles.index, compact(articles));
}
创建视图
@extends(layout)
@section(content)
<h1>Articles</h1>
@foreach($articles as $article)
<article>
<h2>{{$article->title}}</h2>
<div class="body">{{$article->body}}</div>
</article>
@endforeach
@stop
浏览结果,COOL!!!! 显示单个文章 添加显示详细信息的路由 复制代码 代码如下: Route::get(articles/{id}, ArticlesController@show); 其中,{id} 是参数,表示要显示的文章的 id,修改控制器:
public function show($id) {
$article = Article::find($id);
//若果找不到文章
if (is_null($article))
{
//生产环境 APP_DEBUG=false
abort(404);
}
return view(articles.show, compact(article));
}
laravel 提供了更加方便的功能,修改控制器:
public function show($id) {
$article = Article::findOrFail($id);
return view(articles.show, compact(article));
}
Its cool. 新建视图
@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($articles as $article)
<article>
<h2>
{{--这种方式可以--}}
<a href="/articles/{{$article->id}}">{{$article->title}}</a>
{{--这种方式更加灵活,不限制路径--}}<br>
<a href="{{action(ArticlesController@show, [$article->id])}}">{{$article->title}}</a>
{{--还可以使用--}}<br>
<a href="{{url(/articles, $article->id)}}">{{$article->title}}</a>
</h2>
<div class="body">{{$article->body}}</div>
</article>
@endforeach
@stop
以上所述就是本文的全部内容了,希望能够对大家学习Laravel5框架有所帮助 。 |