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'));
    }
It's 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
posted on 2015-04-01 14:30 Zhangjinglin 阅读(1193) 评论(3) 收藏 举报
 
                    
                     
                    
                 
                    
                 
                
            
         
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号