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

不言
Libérer: 2023-03-31 21:10:02
original
2506 Les gens l'ont consulté

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');
Copier après la connexion

Créer un contrôleur

php artisan make:controller ArticlesController --plain
Copier après la connexion

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

}
Copier après la connexion

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;));
  }
Copier après la connexion

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
Copier après la connexion

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;);
Copier après la connexion

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;));
  }
Copier après la connexion

Laravel propose des fonctions plus pratiques :

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

    return view(&#39;articles.show&#39;, compact(&#39;article&#39;));
  }
Copier après la connexion

C'est cool.

Nouvelle vue

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

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

  <article>
    {{$article->body}}
  </article>
@stop
Copier après la connexion

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
Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!