Frage

Ich habe gerade "Erste Schritte mit Laravel 4" E -Book von Raphael Saunier und ausprobiert das Tutorial, während er die Route geschrieben hat :: In Routes.php habe ich einen Fehler gemacht, das gesagt hat, dass

Symfony \ Component \ HttpKernel \ Exception \ NotFoundHttpException

Als ich den Code so geschrieben habe

Route::get('cats/{cat}', function($cat){
    return View::make('cats.single')->with('cat', $cat);
});

Route::get('cats/create', function() {
$cat = new Cat;
return View::make('cats.edit')
->with('cat', $cat)
->with('method', 'post');
});

Aber nachdem ich die Quelldatei von packtpub heruntergeladen habe, prüfe ich, ob der gesamte Code genau gleich ist, aber nur die Reihenfolge ist unterschiedlich, so wie hier

Route::get('cats/create', function() {
$cat = new Cat;
return View::make('cats.edit')
->with('cat', $cat)
->with('method', 'post');
});

Route::get('cats/{cat}', function($cat){
    return View::make('cats.single')->with('cat', $cat);
});

Sind Unterschiede in der Routensequenz wie diese in der Datei „routes.php“ von Bedeutung?Wie kann ich jetzt feststellen, dass der Fehler von der Routensequenz herrührt?

War es hilfreich?

Lösung

Ja.Die Reihenfolge ist definitiv wichtig.Sobald eine Route mit Ihrer aktuellen URL übereinstimmt, werden die restlichen Routen nicht mehr überprüft.

Seit Route::get('cats/{cat}', ...) Spiele gegen cats/ + alles, was es auch beinhaltet cats/create.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top