Chyba počtu parametrů v makru plink?
- smi
- Člen | 75
Mám routu
$admin = new RouteList('Admin');
$admin[] = new Route('admin/hotel/<seo>/<action>/<id>/<mode>', array(
'presenter' => 'Hotel',
'seo' => 'none',
'action' => 'lokace',
'id' => 0,
'mode' => 'text',
));
$admin[] = new Route('admin/<presenter>/<action>[/<id>]', 'Homepage:default');
$router[] = $admin;
Když vytvářím odkaz takto:
<a href="{plink $presenter->action, $presenter->SEO, $presenter->ID, $presenter->Mode}">Image</a>
Dostanu:
… admin/hotel/hote-doma/ubytovani/9/
Když ale takto (přehodim posledni parametry):
<a href="{plink $presenter->action, $presenter->SEO, $presenter->Mode, $presenter->ID}">Image</a>
Dostanu:
… admin/hotel/hote-doma/ubytovani/text/9
Kde jsem udělal soudruzi chybu nebo je pocet paramatru omezen nebo je chyba v nette nebo … ?
(Všechny hodnoty jsou samozřejmě naplněné)
Editoval smi (21. 2. 2014 12:57)
- David Matějka
- Moderator | 6445
Jak pise Majkl, na poradi parametru v routeru nezalezi. Parametry se umeji samy pojmenovat, pokud je mas v action* / render* metode v presenteru, takze nasledujici kod by se prelozil spravne
class FooPresenter extends BasePresenter
{
public function actionDefault($lorem, $ipsum)
{
}
}
<a n:href="Foo:default $value1, $value2">
tak se $value1
priradi parametru lorem
a
$value2
parametru ipsum
v tvem pripade take popremyslej o tom, zda by nebylo vhodne pouzit persistentni parametry
Editoval matej21 (21. 2. 2014 13:25)
- smi
- Člen | 75
matej21 napsal(a):
Jak pise Majkl, na poradi parametru v routeru nezalezi. Parametry se umeji samy pojmenovat, pokud je mas v action* / render* metode v presenteru, takze nasledujici kod by se prelozil spravne
class FooPresenter extends BasePresenter { public function actionDefault($lorem, $ipsum) { } }
<a n:href="Foo:default $value1, $value2">
tak se
$value1
priradi parametrulorem
a$value2
parametruipsum
v tvem pripade take popremyslej o tom, zda by nebylo vhodne pouzit persistentni parametry
Nepomohlo ani pojmenovaní ani „helper“ expand pole argumentu.
Prostě je otočím a bude.
Jen stále nevím, kde udělali soudruzi z NDR chybu :o)
Persistentní parametry se mi tady asi nehodí, ale díky za typ.