Jak vyřešit tuto dvojznačnou routu

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

Ahoj,

jak byste řešili tuhle routu ? Nevím jestli na to jdu správně s routama jsem si zatím moc nehrál, díky.

$router[] = new Route('[<lang [a-zA-Z]{2}>/]<presenter=Homepage>/<action=default>[/<detailType>][/<id>]');
$router[] = new Route('[<lang [a-zA-Z]{2}>/]<presenter=Homepage>/<action=default>[/page/<page>]');

Jde o to že url může vypadat takto:

první routa:
www.neco.cz/articles/list/detail/123
www.neco.cz/articles/list/pdf/123

druhá routa:
www.neco.cz/articles/list/page/2

jde o to, že když nyní zavolám www.neco.cz/articles/list/page/2
tak to přeloží zpětně jako:

$detailType = page
$id = 2

napadlo me jedine mu vymezit detailType = vse krome „page“.

Díky za rady

Editoval kleinpetr (28. 5. 2015 7:48)

jiri.pudil
Nette Blogger | 1029
+
+4
-

Přehoď pořadí rout. Nette je zpracovává sekvenčně a vezme první, která sedí.

kleinpetr
Člen | 480
+
0
-

Nojo to mi nedošlo. Díky