routy – misto action slug pro specificky presenter
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- simPod
- Člen | 383
Zdravim. Takto vypada moje nastaveni routy pro vsechny me url, ktere ted
vypadaji asi takhle http://www.ddfg.com/presenter/sablona
:
$router[] = $frontRouter = new RouteList('Front');
$frontRouter[] = new Route('<presenter>/<action>[/<id>]', 'Homepage:default');
Chtel bych, aby adresy u jednoho presenteru (napr. MujPresenter) vypadaly
nejak takto:
http://www.ddfg.com/muj/test
ale test
by v tomto pripade byl slug, ktery by se zpracoval
v metode renderDefault()
a dle nej by se nastavila promenna
pro obsah
Podle aktualniho nastaveni rout se cast url test
bere jako
test.latte
, coz nechci, chci aby to rozpoznalo slug.
Dekuji
Editoval simPod (7. 12. 2011 1:16)
- pawouk
- Člen | 172
Do bootstrapu přidej tento řádek jako druhý presenter
$router[] = new Route('muj/<slug>', 'Muj:default');
pak by bootstrap mohl vypadat nejak takto:
$router[] = new Route('index.php', 'Homepage:default', Route::ONE_WAY);
$router[] = new Route('muj/<slug>', 'Muj:default');
$router[] = new Route('<presenter>/<action>[/<id>]', 'Homepage:default');
No a pak sjen udelej MujPresenter a v nem actionDefault($slug){…
}
a renderDefault($slug){…
}