Špatné přijmutí routy – volá se špatná action
- Darkry
- Člen | 101
Zdravím,
mám tyto dvě routy:
$router[] = new Route('<cat>[/<id>]', array(
'module' => 'Front',
'presenter' => 'Web',
'action' => 'category',
));
$router[] = new Route('<action>[/<paginator-page>]', array(
'module' => 'Front',
'presenter' => 'Web',
'action' => 'default',
));
Přičemž ta první by se měla použít pouze pokud se volá akce category a předá se jí parametr cat.
Ta druhá by se měla volat u ostatních akcí stejného presenteru.
Ovšem když pak odkazuji:
<li><a n:href=":Front:Web:vyrobky">Výrobky</a></li>
tak se použije první routa což samozřejmě nechci. Zavolá se tedy action
category místo action vyrobky jak chci.
Debug panel hlásí toto:
Front:Web:category
cat = vyrobky
id = NULL
Opět nevím jak se přišlo na to, že cat = vyrobky.
Díky za odpovědi, routám moc nerozumím a opravdu si nyní nevím rady :-)
Editoval Darkry (16. 6. 2011 11:30)
- newPOPE
- Člen | 648
Obidve routy nemaju ziadne obmedzenia v maske (su zo strany FW rovnake :-)) cize Nette nemoze vediet ktoru chces pouzit a proste vygeneruje podla prvej ktora pasuje.
to cat
tam zrejme uz FW sam vydetekuje ze sa koder mozno pomylil
tak to dosadi inteligentne :-) aj ked je mi to trochu divne preco to robi ked mu
to nik nepovedal!.
Edit:
este mozes skusit pouzit filter
Editoval newPOPE (16. 6. 2011 11:55)