Heim >Backend-Entwicklung >PHP-Tutorial >Lernen Sie das Modell und den Controller des Laravel 5-Frameworks sowie den grundlegenden Ansichtsfluss kennen
Dieser Artikel stellt Ihnen den grundlegenden Prozess von Modellen, Controllern und Ansichten im Laravel5-Framework vor. Tatsächlich unterteilt das MVC-Architekturmuster ein interaktives System in drei Komponenten. Modelle enthalten Kernfunktionen und Daten. Ansichten zeigen dem Benutzer Informationen an. Controller verarbeiten Benutzereingaben. Ansichten und Controller bilden zusammen die Benutzeroberfläche.
Route hinzufügen
Route::get('artiles', 'ArticlesController@index');
Controller erstellen
php artisan make:controller ArticlesController --plain
Controller ändern
<?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; } }
Sie können das zurückgegebene JSON-Ergebnis im Browser sehen, cool!
Ändern Sie den Controller und geben Sie die Ansicht zurück
public function index() { $articles = Article::all(); return view('articles.index', compact('articles')); }
Erstellen Sie eine Ansicht
@extends('layout') @section('content') <h1>Articles</h1> @foreach($articles as $article) <article> <h2>{{$article->title}}</h2> <p class="body">{{$article->body}}</p> </article> @endforeach @stop
Durchsuchen Sie die Ergebnisse, COOL! ! ! !
Einen einzelnen Artikel anzeigen
Eine Route hinzufügen, um detaillierte Informationen anzuzeigen
Route::get('articles/{id}', 'ArticlesController@show');
wobei {id} ein Parameter ist, Geben Sie an, dass Sie die ID des angezeigten Artikels ändern möchten. Ändern Sie den Controller:
public function show($id) { $article = Article::find($id); //若果找不到文章 if (is_null($article)) { //生产环境 APP_DEBUG=false abort(404); } return view('articles.show', compact('article')); }
Laravel bietet praktischere Funktionen. Ändern Sie den Controller:
public function show($id) { $article = Article::findOrFail($id); return view('articles.show', compact('article')); }
Es ist cool.
Neue Ansicht
@extends('layout') @section('content') <h1>{{$article->title}}</h1> <article> {{$article->body}} </article> @stop
Versuchen Sie, im Browser auf Folgendes zuzugreifen: /articles/1 /articles/2
Indexansicht ändern
@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> <p class="body">{{$article->body}}</p> </article> @endforeach @stop
Das ist alles Der gesamte Inhalt, ich hoffe, er wird für das Lernen aller hilfreich sein. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website!
Verwandte Empfehlungen:
Über den Bindungsbetrieb von Laravel-Framework-Routen und -Controllern
Das obige ist der detaillierte Inhalt vonLernen Sie das Modell und den Controller des Laravel 5-Frameworks sowie den grundlegenden Ansichtsfluss kennen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!