Heim  >  Artikel  >  Backend-Entwicklung  >  Grundlagen von Laravel 5 (3) – Daten an die Ansicht übergeben

Grundlagen von Laravel 5 (3) – Daten an die Ansicht übergeben

WBOY
WBOYOriginal
2016-08-08 09:26:53977Durchsuche
  • Wir erstellen eine neue Route in Routes.php
<code>Route::get('about', 'PagesController@about');</code>

Beim Durchsuchen im Browser wird eine Fehlermeldung angezeigt. Die Fehlermeldung ist nur eine Aufforderung und enthält keine Details. In der Produktionsumgebung ist dies in Ordnung, wir hoffen jedoch, während der Entwicklungsphase detaillierte Informationen zu erhalten.

  • Suchen Sie die .env-Datei im Stammverzeichnis des Projekts und ändern Sie sie
<code>APP_DEBUG=true</code>

Dadurch wird eine detaillierte Fehlermeldung angezeigt: PagesController existiert nicht. In der Produktionsumgebung muss es jedoch auf „false“ gesetzt werden

  • Wir können einen neuen Controller manuell erstellen, aber eine schnellere Möglichkeit ist die Verwendung des von Laravel bereitgestellten Generators. Im aktuellen Projektverzeichnis über die Befehlszeile ausführen:
<code>php artisan</code>

Sie können die von Laravel bereitgestellten Funktionen sehen.

<code>php artisan make:controller PagesController</code>

ok, PagesController.phpapp->http->controller wird unten generiert

<code><?php namespace App\Http\Controllers;

use App\Http\Requests;
use App\Http\Controllers\Controller;

use Illuminate\Http\Request;

class PagesController extends Controller {

	/**
	 * Display a listing of the resource.
	 *
	 * @return Response
	 */
	public function index()
	{
		//
	}

	/**
	 * Show the form for creating a new resource.
	 *
	 * @return Response
	 */
	public function create()
	{
		//
	}

	/**
	 * Store a newly created resource in storage.
	 *
	 * @return Response
	 */
	public function store()
	{
		//
	}

	/**
	 * Display the specified resource.
	 *
	 * @param  int  $id
	 * @return Response
	 */
	public function show($id)
	{
		//
	}

	/**
	 * Show the form for editing the specified resource.
	 *
	 * @param  int  $id
	 * @return Response
	 */
	public function edit($id)
	{
		//
	}

	/**
	 * Update the specified resource in storage.
	 *
	 * @param  int  $id
	 * @return Response
	 */
	public function update($id)
	{
		//
	}

	/**
	 * Remove the specified resource from storage.
	 *
	 * @param  int  $id
	 * @return Response
	 */
	public function destroy($id)
	{
		//
	}

}</code>

Der so generierte Controller enthält alle erforderlichen RESTful-Methoden, wir können ihn vereinfachen. Löschen Sie die generierte PagesController.php und führen Sie sie in der Befehlszeile aus:

<code>php artisan make:controller PagesController --plain</code>

Sehen Sie sich die generierten Ergebnisse noch einmal an

<code><?php namespace App\Http\Controllers;

use App\Http\Requests;
use App\Http\Controllers\Controller;

use Illuminate\Http\Request;

class PagesController extends Controller {

	//

}</code>

Im Grunde ein leerer Controller, wir müssen alle Methoden selbst erstellen.

Wenn Sie wissen möchten, welche Parameter wir in der Befehlszeile ausführen können, können Sie den folgenden Befehl ausführen, um die Hilfe anzuzeigen

<code>php artisan help make:controller</code>

OK, Sie können häufig den Befehl „help“ verwenden, um diese Parameter besser zu verstehen.

  • Etablieren Sie die about-Methode in PagesController.
<code>	public function about() {
        return &#39;About Page&#39;;
    }</code>

Überprüfen Sie die Ergebnisse im Browser, der Fehler verschwindet und einfache Informationen werden zurückgegeben.

  • Zurück zur Ansicht

Natürlich möchten wir das HTML-Dokument zurückgeben und die Rückgabe der about-Methode ändern:

<code>	public function about() {
        return view(&#39;pages.about&#39;);
    }</code>

Hinweis: Das zurückgegebene Ergebnis ist pages.about, was eine views-Datei im Unterverzeichnis pages innerhalb des Unterverzeichnisses about.balde.php bedeutet. Lassen Sie uns die resourcesviewspagesabout.balde.phpDatei

erstellen
<code><!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
<h1>About</h1>
</body>
</html></code>

Das ist es. Führen Sie Ihren Browser aus, um zu sehen,??

  • Daten in die Ansicht übertragen

PagesController.php ändern

<code>	public function about() {
        $name = 'Zhang Jinlgin';
        return view('pages.about')->with('name', $name);
    }</code>

Ändern Sie unsere Ansichtsdatei about.blade.php

<code><h1>About <?= $name ?></h1></code>

Bingo, überprüfen Sie die Ergebnisse.

Das von uns verwendete Laravel verwendet Blade-Vorlagen. Wir können diesen Vorteil nutzen, um die Ansicht zu ändern:

<code><h1>About {{ $name }}</h1></code>

Sieht besser aus. {{}} entgeht der Semantik von HTML:

<code>$name = '<span style="color: red">Zhang Jinlgin</span>';</code>

Sehen Sie sich die Ergebnisse an und stellen Sie fest, dass alle HTML-Elemente maskiert wurden. Wenn Sie jedoch kein HTML-Escape benötigen, können Sie die Ansicht mit {!! !!} ändern:

<code><h1>About {!! $name !!}</h1></code>

Sehen Sie sich die Ergebnisse noch einmal an,??

Das Obige hat die Grundlagen von Laravel 5 (3) vorgestellt – die Übertragung von Daten an die Ansicht, einschließlich einiger Aspekte davon. Ich hoffe, dass es für Freunde hilfreich sein wird, die sich für PHP-Tutorials interessieren.

Stellungnahme:
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