php教程

超轻量级php框架startmvc

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

更新时间:2020-03-03 22:19:06 作者:startmvc
添加路由Route::get('artiles','ArticlesController@index');创建控制器 phpartisanmake:controllerArticlesContr

添加路由


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

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

php框架laravel laravel视图 laravel控制器 模型视图控制器 laravel资源控制器