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

WBOY
Freigeben: 2016-05-30 14:59:19
Original
916 Leute haben es durchsucht

添加路由

代码如下:


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

创建控制器

代码如下:


 php artisan make:controller ArticlesController --plain

修改控制器

<&#63;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;
  }

}

Nach dem Login kopieren

可以在浏览器中看到返回的 JSON 结果,cool!

修改控制器,返回视图

 public function index() {
    $articles = Article::all();

    return view('articles.index', compact('articles'));
  }

Nach dem Login kopieren

创建视图

@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

Nach dem Login kopieren

浏览结果,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'));
  }

Nach dem Login kopieren

laravel 提供了更加方便的功能,修改控制器:

  public function show($id) {
    $article = Article::findOrFail($id);

    return view('articles.show', compact('article'));
  }

Nach dem Login kopieren

It's cool.

新建视图

@extends('layout')

@section('content')
  <h1>{{$article->title}}</h1>

  <article>
    {{$article->body}}
  </article>
@stop

Nach dem Login kopieren

在浏览器中尝试访问:/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
Nach dem Login kopieren

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

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage