Maison >développement back-end >tutoriel php >Découverte du modèle et du contrôleur du framework Laravel 5 et du flux de vues de base

Découverte du modèle et du contrôleur du framework Laravel 5 et du flux de vues de base

不言
不言original
2018-06-13 09:57:082530parcourir

Cet article vous présente le processus de base des modèles, des contrôleurs et des vues dans le framework Laravel5. En fait, le modèle d'architecture MVC divise un système interactif en trois composants. Les modèles contiennent des fonctionnalités et des données de base. Les vues affichent des informations à l'utilisateur. Les contrôleurs gèrent les entrées des utilisateurs. Les vues et les contrôleurs forment ensemble l’interface utilisateur.

Ajouter un itinéraire

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

Créer un contrôleur

php artisan make:controller ArticlesController --plain

Modifier un contrôleur

<?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;
  }

}

Vous pouvez voir le résultat JSON renvoyé dans le navigateur, cool !

Modifier le contrôleur et revenir à la vue

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

    return view(&#39;articles.index&#39;, compact(&#39;articles&#39;));
  }

Créer une vue

@extends(&#39;layout&#39;)

@section(&#39;content&#39;)
  <h1>Articles</h1>

  @foreach($articles as $article)
    <article>
      <h2>{{$article->title}}</h2>

      <p class="body">{{$article->body}}</p>
    </article>
  @endforeach
@stop

Parcourir les résultats , COOL! ! ! !

Afficher un seul article

Ajouter un itinéraire pour afficher des informations détaillées

Route::get(&#39;articles/{id}&#39;, &#39;ArticlesController@show&#39;);

Où, {id} est le paramètre, Indique l'identifiant de l'article à afficher. Modifier le contrôleur :

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

    //若果找不到文章
    if (is_null($article))
    {
      //生产环境 APP_DEBUG=false
      abort(404);
    }
    return view(&#39;articles.show&#39;, compact(&#39;article&#39;));
  }

Laravel propose des fonctions plus pratiques :

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

    return view(&#39;articles.show&#39;, compact(&#39;article&#39;));
  }

C'est cool.

Nouvelle vue

@extends(&#39;layout&#39;)

@section(&#39;content&#39;)
  <h1>{{$article->title}}</h1>

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

Essayez d'accéder dans le navigateur : /articles/1 /articles/2

Modifier la vue d'index

@extends(&#39;layout&#39;)

@section(&#39;content&#39;)
  <h1>Articles</h1>
  <hr/>
  @foreach($articles as $article)
    <article>
      <h2>
        {{--这种方式可以--}}
        <a href="/articles/{{$article->id}}">{{$article->title}}</a>
        {{--这种方式更加灵活,不限制路径--}}<br>
        <a href="{{action(&#39;ArticlesController@show&#39;, [$article->id])}}">{{$article->title}}</a>
        {{--还可以使用--}}<br>
        <a href="{{url(&#39;/articles&#39;, $article->id)}}">{{$article->title}}</a>
      </h2>

      <p class="body">{{$article->body}}</p>
    </article>
  @endforeach
@stop

Ce qui précède représente l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

À propos de l'opération de liaison des routes et des contrôleurs du framework Laravel

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn