Předání specifického formátu url modulu a ostatní jednotnému presenteru

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

Ahoj,

pracuju tedka na jednom projektu, ve kterem kterem mam modul pro backend, ktery ma klasickou modulovou strukturu a logiku Nette. Na tento modul potrebuju smerovat jeho pozadavky v klasickem tvaru modul:presenter:action.
Pokud ale bude pozadavek na cokoliv jineho, tak ho potrebuju presmerovat na jednotny presenter pro vsechny.

Poradi nekdo, jak tedy nastavit routy?

kesav
Člen | 5
+
0
-

Ahoj,

mám podobný problém, který ve výsledku bude pravděpodobně mít stejný výsledek.

ja mám požadavek
admin/<controller>/<action>/<id> – coz funguje paradne a dobre na AdminModule

a pak mam:
<page [a-z0–9\-]+>/<params .*> – coz funguje jen z casti, pokud je vyplneno jen prvni segment.

jak udelat v nette to, aby mi url rozsekalo na parametry dle lomítka (což dělá defaultně) a zdytek mi předalo do proměnné params vč. lomítek??

předem děkuji za odpověď

P.S.: mé routy:

$router[] = new NRoute(
    '/admin/[<controller \w+>/[<action \w+>/[<id \d+>/]]]',
    array(
        'module'=>'Admin',
        'presenter'=>'Default',
        'action'=>'default',
        'id'=>NULL
    )
);
$router[] = new NRoute(
    '/<page [a-z0-9\-]+>/[<params .*>/]',
    array(
        'module'=>'Web',
        'presenter'=>'Default',
        'action'=>'default',
        'page'=>'',
        'params' => ''
    )
);

Editoval kesav (28. 11. 2010 15:14)

Dj_Oggy
Člen | 67
+
0
-

Ahoj,

bohuzel tu jsou na vine spis vlastnost regularnich vyrazu nebo moje neznalost regularu. Ja nakonec tenhle problem vyresil vlastnim multirouterem, ve kterem si matchnu url proti db zaznamum. Pri naleznuti orezu znamou cast a zbytek predam klasickym routam.