2016-10-26 6 views
0

In Schlanke Arbeits habe ich eine Route mit einem benannten PfadpathFor nicht in Schlanke Rahmen 3 3

$app->get('/admin/edit-course/{id}', '\AdminController:edit_course')->setName('/admin/edit-course'); 

Wenn ich versuche, und Zugriff auf dieses Objekt des Router in meinen Vorlagen wie so mit ...

var_dump($router->pathFor('/admin/edit-course')); 

... ich einen Anwendungsfehler erhalten:

Schlanke Fehler Application

Die Anwendung konnte nicht laufen wegen der folgenden Fehler:

Typ: InvalidArgumentException

Nachricht: Fehlende Daten für URL-Segment: id

Warum ist das? Ich möchte nur, dass der Router die URL an die AdminController:edit_course-Funktion ausgibt. Es funktioniert für meine anderen Routen, aber diese haben keine Parameter wie IDs, die an die URL übergeben werden.

Antwort

2

sein, weil in get-Route festgelegt Sie "/ admin/edit-Kurs/{id}"

so ist es für id und seine nicht in der Lage suchen, um es zu bekommen.

pathFor('<< route name >>', ['id' => 0]); 

Dies ist die Syntax, so dass Sie ID übergeben müssen.

, wenn Sie nicht-ID übergeben wollen, dann müssen Sie ohne params eine andere Route hinzufügen

$app->get('/admin/edit-course', '\AdminController:edit_course') 
->setName('/admin/edit-course'); 
Verwandte Themen