Frage

Ich bin mit Kohana v3 für ein Web-Projekt, und heute fand ich mir das Schreiben:

echo Html::anchor('user/view/'.$user->id, "See user's profile");

Wenn ich die action_view Methode in den User-Controller umbenennen, wird die Verbindung unterbrochen sein. Um dies zu vermeiden, habe ich eine Funktion im User-Modell, das die URL für die Anzeige des Benutzerprofils verwendet zurückgibt:

echo Html::anchor($user->url_view(), "See user's profile");

Es gibt einen anderen (Reiniger) Weg, dies (ähnlich Djangos url() und {% url %}) zu tun?

PS:. Entschuldigen Sie mein Englisch

War es hilfreich?

Lösung

Ja, Sie wollen umkehren die Routennamen Routing verwenden. Probieren Sie etwas wie folgt aus:

echo Html::anchor(
   Route::get('your_route_name')->uri(array('id'=>$user->id)), 
   "See user's profile"
);

Andere Tipps

Was tun Sie brauchen, ist Reverse-Routing genannt. Sie haben eine Route „namen“ (mit Parametern schließlich) und verknüpfen Sie es mit einem Modul / Aktions-Paar oder mit was auch immer / Weg.

dann verwenden Sie diesen Weg Namen anstelle des direkten Steuerung / Aktionspfades, so dass Sie den Namen der Aktionen ändern kann, wie Sie in Zukunft gerne.

hier ist eine Seite, die beschreibt, diese . bewusst sein, dass nicht unterstützt 2.x Rückleitung in kohana wird (so, als er ihn wirklich bedeutet 3.x bis 2.3 bezeichnet)

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