routování domény 3. řádu, problém s překladem do url

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

Zdravím,

mám aplikaci se třemi moduly: Front, Admin a Eshop a potřebuju nastavit routování následně:
aplikace.cz => FrontModule
aplikcae.cz/admin => AdminModule
<eshop>.aplikace.cz => EshopModule

Subdoménu porovnávám s databází a zobrazím příslušná data.

Routování mám takto:

<?php
$container->router[] = $adminRouter = new RouteList('Admin');
$adminRouter[] = new Route('admin/<presenter>/<action>[/<id>]', 'Default:default');

$container->router[] = $eshopRouter = new RouteList('Eshop');
$eshopRouter[] = new Route('//<eshop>.<domain>.<tld>/<presenter>/<action>[/<id>]', 'Default:default');

$container->router[] = $frontRouter = new RouteList('Front');
$frontRouter[] = new Route('<presenter>/<action>[/<id>]', 'Homepage:default');
?>

Front i Admin fungují správně, problém je s routováním EshopModule. Zobrazí se mi správně DefaultPresenter, ale nefunguje mi překlad do url: No route for Eshop:Default:test(). Zadání adresy přímo http://eshop.e.l/default/test funguje.
Prosím o radu.

David Matějka
Moderator | 6445
+
+2
-

pro tu masku '//<eshop>.<domain>.<tld>/<presenter>/<action>[/<id>]' bys musel do generovani odkazu posilat i parametry domain a tld, tedy

{link Foo:bar eshop=>lorem, domain=>domena, tld=>cz}

mozna ti bude stacit magicky placeholder do masky %domain%, ktery se nahradi za aktualni domenu. Maska tedy bude vypadat nasledovne:

//<eshop>.%domain%/<presenter>/<action>[/<id>]
kastanekdavid
Člen | 39
+
0
-

David Matějka napsal(a):

pro tu masku '//<eshop>.<domain>.<tld>/<presenter>/<action>[/<id>]' bys musel do generovani odkazu posilat i parametry domain a tld, tedy

{link Foo:bar eshop=>lorem, domain=>domena, tld=>cz}

mozna ti bude stacit magicky placeholder do masky %domain%, ktery se nahradi za aktualni domenu. Maska tedy bude vypadat nasledovne:

//<eshop>.%domain%/<presenter>/<action>[/<id>]

Davidova odpověď mě navedla na tento článek, kde mi teprve zasvítalo :)