info@a-coding-project.de

Views in Laravel nutzen

Als MVC-Framework bietet Laravel natürlich auch ein Konzept zum Umsetzen von Views an.
Der hauptsächliche View-Teil wird dabei mit Blade-Dateien realisiert, die sich im Normalfall im resources/views-Ordner befinden.
Man könnte vereinfacht sagen: Eine View entspricht einer Blade-Datei.

Die Organisation der Ordner-Struktur mit den Views ist dem Entwickler überlassen. Eine gängige Option ist, pro Controller einen Unterordner mit allen dazugehörigen Blade-Dateien zu erstellen.

Views über einen Controller aufrufen

Ein Controller ist unter anderem dafür zuständig, Datensätze, die für das Anzeigen einer View benötigt werden, zu erzeugen beziehungsweise aus der Datenbank abzurufen. Die View soll diese Daten erhalten und dann optisch in Form einer HTML-Seite darstellen. Wie das im Detail erfolgt, definieren wir innerhalb der Blade-Dateien.
Die view() Helper-Funktion ermöglicht es uns, eine View zu bestimmen, die angezeigt werden soll und ihr die nötigen Daten zu übergeben. Meistens wird das am Ende einer Controller-Funktion gemacht, um aus einem Request eine entsprechende Antwort zu generieren.

    return view('my-view', ['viewDaten' => $daten]);

Die Funktion oben sucht im resources/views-Ordner nach der Blade-Datei mit dem Namen "my-view" und übergibt ihr ein assoziatives Array. Jedes Item dieses Arrays wird dann im Blade-Template als php-Variable zur Verfügung stehen (hier also als $viewDaten).
Auf Blade-Dateien in Unterordnern kann durch die Trennung mit Punkt zugegriffen werden:

    return view('my-view-folder.my-view-1', ['viewDaten' => $daten]);

Views direkt aufrufen

Nicht jede View muss vorher mit Daten befüllt werden. Views lassen sich direkt aus einer Routendefinition (in routes/web.php) heraus aufrufen:

Route::get(„/my-view“, function() {
    Return view (‚my-view“);
}); 

MVVM in Laravel

Durch Erweiterungen ist es auch möglich das MVVM-Muster mit Laravel umzusetzen. Dazu gibt die Composer-Erweiterung laravel-view-models.

Laravel Entwickler gesucht?

Wir haben bereits viel Erfahrung im Umgang mit Laravel und Vue.js.
Nehmen Sie gerne unverbindlich Kontakt zu uns auf.

zum Angebot

Über uns

Stefan Wienströer

Wir entwickeln Webanwendungen mit viel Leidenschaft. Unser Wissen geben wir dabei gerne weiter. Mehr über a coding project

Auch interessant