Laravel ist ein modernes und sehr beliebtes PHP-Framework. Gängige Anforderungen, wie eine Benutzer Authentifizierung (Sign-In, Login, Reset Passwort) und Berechtigungen sind fixer Bestandteil des Frameworks.

Voraussetzung für das Entwickeln einer Laravel-Anwendung ist ein SSH-Zugriff auf den Webserver. Für den Betrieb ist SSH nicht unbedingt notwendig, die genauen Systemvoraussetzungen stehen auf der Herstellerseite: https://laravel.com/docs/5.2/installation. Eine Entwicklungsumgebung kann auch unter Windows installiert werden: "Laragon" oder "Laravel Homestead", siehe: www.libe.net/index.php/laravel-homestead-windows-10. Wer alle Voraussetzungen für Laravel installiert hat, kann mittels laravel new Seite in der Konsole ein neues Projekt anlegen. Die Datenbank kann wie folgt angelegt werden: Laravel Datenbank

 

Laravel hat eine wirklich gute Dokumentation und Beispielvideos, speziell für Anfänger. Eine sehr gute Video-Serie ist zum Beispiel: https://laracasts.com/series/laravel-5-from-scratch.

Damit der Start in Laravel möglichst schnell klappt, habe ich die gängigen Aktionen: index, create, store, edit, update, show, destroy in einem Beispiel zusammengefasst. Das Beispiel kann Einträge erstellen, auflisten, anzeigen, bearbeiten und löschen.

 

Vorab aber etwas Theorie zur Funktionsweise von Laravel. Laravel folgt dem traditionellen Model-View-Controller Design:

Controller: Verarbeiten die Usereingaben und empfangen Daten mittels Verwendung von Models

Model: Lesen oder schreiben Werte von und zur Datenbank

Views Werden für die Anzeige der jeweiligen Seite verwendet

 

Um die URLs den bestimmten Controller-Aktionen zuzuweisen, startet der Aufruf über Routes.

 

Für eine bessere Vorstellung habe ich das konkrete Beispiel-Skript schematisch dargestellt.

Als Platzhalter für den Model-Namen habe ich "Myinput" verwendet. Der verwendete Name "Myinput" sollte als Datenbankeintrag oder ein Objekt verstanden werden. Das Model wird für das Ansprechen der Datenbank verwendet, der Model-Name repräsentiert die zu verwaltenden Objekte. Für das Erstellen einer Anwendung, um z.B. Autos zu verwalten, könnte anstelle von "Myinput" als Model der Name "Auto" verwendet werden, zum Verwalten von Büchern, z.B. "Buch".

Laravel verwendet an bestimmten Stellen ein "s" am Ende des Namens. Das "s" steht für die Mehrzahl: Wenn wir Laravel nicht explizit etwas anderes mitteilen, geht das Framework davon aus, dass die Datenbanktabelle für "Myinput", "myinputs" heißt.

Wird im Browser eine URL mit dem Model-Namen (/myinputs) aufgerufen, landet die Anfrage in der Datei publicroot\app\Http\routes.php. (Achtung seit Laravel Version 5.3 wird folgende Routes-Datei für die Anwendung verwendet: publicroot\routes\web.php) Die Routes-Datei könnte die Anfrage direkt verarbeiten, übersichtlicher wird es allerdings, wenn die Anfragen an einen Controller weitergegeben werden: 

Folgender Eintrag in der Datei routes.php erstellt automatisch URL-Pfade für einen zugehörigen Controller:

Route::resource('myinputs', 'MyinputController');

 

Der Befehl Route::resource erzeugt automatisch die folgenden Pfade:

 

Request Type Pfad Aktion Route Name
GET /myinputs index myinputs.index
GET /myinputs/create create myinputs.create
POST /myinputs store myinputs.store
GET /myinputs/{id} show myinputs.show
GET /myinputs/{id}/edit edit myinputs.edit
PUT/PATCH /myinputs/{id} update myinputs.update
DELETE /myinputs/{id} destroy myinputs.destroy

 

Route::resource steht automatisch für mehrere "Route::REQUEST"-Einträge, diese könnten auch einzeln eingetragen werden:  

Route::get($uri, $callback);
Route::post($uri, $callback);
Route::put($uri, $callback);
Route::patch($uri, $callback);
Route::delete($uri, $callback);

 

Beim Aufruf der URL: http://MyWebserver.com/myinputs, wird die entsprechende Funktion index in der Controllerdatei "MyModelController" aufgerufen. http://MyWebserver.com/myinputs/create wird an die Funktion create in der Controllerdatei "MyModelController" geleitet, usw.


andere Themen getagged mit #wie erstelle ich
Laravel 5.5 Beispiel - Schritt für Schritt

Laravel 5.5 Beispiel - Schritt für Schritt

CRUD (Create - Read - Update - Delete)

Wie in dem zuvor veröffentlichten Artikel "Übersicht Laravel Funktion" bereits angekündigt, habe ich für Laravel 5 ein Praxis-Beispiel erstellt. Das Beispiel kann bestimmte Datenbankeinträge erstellen, anzeigen, bearbeiten und löschen.

Laravel 5.5 Beispiel - Schritt für Schritt


Laravel 5.3 Authentication und Authorization Beispiel

Laravel 5.3 Authentication und Authorization Beispiel

Laravel ist für Benutzer-Anmeldungen bereits vorbereitet, das Aktivieren der Funktion erfolgt mit einem einfachen Befehl.

Laravel 5.3 Authentication und Authorization Beispiel