Routy – action jako parametr pro renderDefault
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- simPod
- Člen | 383
mam takoveto nastaveni routy:
$frontRouter[] = new Route('<lang [a-z]{2}>/<presenter>/<action>', array(
'presenter' => 'Homepage',
'action' => 'default',
'id' => NULL,
'lang' => 'en'
));
jakym zpusobem udelam, aby se obsah action predal v presenteru metode
renderDefault jako parametr?
ted kdyz zadam napr. adresu: cz/mujpres/akce
, tak se Nette snazi
nacist MujpresPresenter/akce.latte
.
Ja bych chtel, aby nacetlo MujpresPresenter/default.latte
s parametrem akce
dekuji
- Filip Procházka
- Moderator | 4668
Můžeš zkusit změnit pohled na default
public function actionAkce()
{
$this->setView('default');
}
- duke
- Člen | 650
A proč tedy vůbec používáš v routě <action>, když chceš, aby action byla vždy rovna „default“.
Můžeš použít např.:
$frontRouter[] = new Route('<lang [a-z]{2}>/<presenter>/<slug>', array(
'presenter' => 'Homepage',
'action' => 'default',
'lang' => 'en'
));
A v presenteru pak:
public function renderDefault($slug)
{
// @TODO
}