Laravel Routing: Übersicht
Das Routing entscheidet, welche Aktion bei welcher Url ausgeführt wird. So kann man im einfachsten Fall einfach eine View anzeigen. Dabei lassen sich unter anderem für GET und POST verschiedene Aktionen zuweisen. Auch Variablen in der Url lassen sich einfach nutzen: Sie werden dann zum Beispiel automatisch als Parameter in einer Methode übergeben.
Natürlich ist es auch möglich komplexere Routing-Regeln festzulegen. Dafür lassen sich reguläre Ausdrücke einsetzen.
Routing-Dateien
Die Routen werden in Laravel im Ordner /routes gespeichert. Nach der Installation sind bereits erste Routen vorhanden:
- api.php: Routen für REST-APIs
- channels.php: Definition von Broadcasting-Channels
- console.php: Definition von Artisan-Befehlen
- web.php: Reguläres HTTP-Routing
web.php: Reguläres HTTP-Routing
Die wichtigste Datei beim Routing in Laravel ist die web.php.
So sieht die Datei zu Beginn aus:
<?php /* |-------------------------------------------------------------------------- | Web Routes |-------------------------------------------------------------------------- | | Here is where you can register web routes for your application. These | routes are loaded by the RouteServiceProvider within a group which | contains the "web" middleware group. Now create something great! | */ Route::get('/', function () { return view('welcome'); });
Variablen in der Route übergeben
Mit geschweiften Klammern kann man hier nun Variablen übergeben:
<?php Route::get('/{name}', function ($name) { die("Hallo ".$name); });
Wenn man nun /stefan
aufruft, bekommt man "Hallo Stefan" zurück.
Man kann nach belieben weitere Parameter einfügen:
<?php Route::get('/{name}/{city}', function ($name, $city) { die("Hallo ".$name." aus ".$city); });
Post statt Get
Mit Route::get
werden nur GET-Anfragen entgegen genommen.
Das Absenden von POST-Formularen wäre hier nicht erlaubt.
Um das zu ändern, kann man statt Route::get
einfach Route::post
nutzen.
Du arbeitest in einer Agentur oder als Freelancer?
Dann wirf doch mal einen Blick auf unsere Software FeatValue.
Über uns
Wir entwickeln Webanwendungen mit viel Leidenschaft. Unser Wissen geben wir dabei gerne weiter. Mehr über a coding project