Route – slovník (aliasy) pro action

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Petr Daňa
Člen | 109
+
0
-

Tak jsem zkusil použít slovník pro action k jednomu presenteru, ale nějak mi nefungují:

<?php
$router[] = new Route('nejakypresener/<action>', array(
    'presenter' => 'Nejakypresenter',
    'action' => 'default',
));

Route::setStyleProperty('action', Route::FILTER_TABLE, array(
        'jedna' => 'one',
        'dva' => 'two',
));
?>

V šabloně mi plink vygeneruje url

<?php
http://server.loc/nejakypresenter/jedna
http://server.loc/nejakypresenter/dva
?>

ale při jejich spuštění chce volat view jedna a dva místo správného one a two, což samozřjmě padne na neexistenci šablony.

Copak mám blbě?

David Grudl
Nette Core | 8218
+
0
-

Nejprve volej Route::setStyleProperty() a až pak $router[] = new Route(…)

Ondřej Mirtes
Člen | 1536
+
0
-

Taky mi chvíli trvalo, než jsem na to přišel :)
Nedalo by se udělat, aby nezáleželo na pořadí, jak to volám?

Editoval LastHunter (13. 2. 2009 17:56)

vlki
Člen | 218
+
0
-

Myslím, že by to ani nebylo lepší. Protože teď můžeš mít např. dvě routy, které mají stejně pojmenované parametry a rozdílné styly pro ně.

Což by to tvé řešení nedokázalo zajistit.

Editoval vlki (13. 2. 2009 18:01)