A5下载文章资讯

分类分类

Laravel 5框架学习之模型、控制器、视图基础流程

2015-04-08 14:13作者:zhao

添加路由

Route::get('artiles', 'ArticlesController@index');

创建控制器

php artisan make:controller ArticlesController --plain

修改控制器

<?php namespace AppHttpControllers;

use AppArticle;

use AppHttpRequests;

use AppHttpControllersController;

use IlluminateHttpRequest;

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

以上所述就是本文的全部内容了,希望能够对大家学习Laravel5框架有所帮助。

展开全部

相关

说两句网友评论
    我要跟贴
    取消