widget funguje na každé stránce KROM na errorPresenteru, důvod?
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- MzK
- Člen | 127
{widget checkDomain}
Mi funguje všude.
<?php
/tarify?do=checkDomain-submit
/reference?do=checkDomain-submit
/s/monitoring?do=checkDomain-submit
/affilate/default?do=checkDomain-submit
/objednavka/?do=checkDomain-submit
// prostě všude..
// ALE jakmile se aktivuje errorPresenter (404) tak to nejde?!
action="error: No route for Error:default(do=checkDomain-submit)"
?>
Jak toto chování opravit? Měl jsem za to, že widget (třeba pro vyhledávání na stránce) by měl fungovat všude.. A pokud se zobrazí /404/ tak nejde.
Určitě to je nějaká hloupost s routama..
Pokud všechny routy smažu, tak to funguje:
<?php
*/?do=checkDomain-submit&presenter=Error`*
/?page=technicka-podpora&do=checkDomain-submit&presenter=Page
atd…
?>
- MzK
- Člen | 127
No, protože to souvisí s routama, tak je tedy sem postnu:
<?php
$router = Environment::getApplication()->getRouter();
$router[] = new Route('index.php', array(
'presenter' => 'Default',
'action' => 'default',
), Route::ONE_WAY);
$router[] = new Route('', array(
'presenter' => 'Default',
'action' => 'default',
));
$router[] = new Route('sitemap.xml', array(
'presenter' => 'Sitemap',
'action' => 'default',
));
$router[] = new Route('robots.txt', array(
'presenter' => 'RobotsTxt',
'action' => 'default',
));
$router[] = new Route('/404/', array(
'presenter' => 'Eror',
'action' => 'default',
));
$router[] = new Route('objednavka/<domain>', array(
'presenter' => 'Domain',
'action' => 'default',
'domain'=> NULL
));
$router[] = new Route('aff/<id>', array(
'presenter' => 'Aff',
'action' => 'default',
'id'=> NULL
));
$router[] = new Route('objednavka2/<domain>', array(
'presenter' => 'Domain',
'action' => 'registertwo',
'domain'=> NULL
));
$router[] = new Route('objednavka3/final', array(
'presenter' => 'Domain',
'action' => 'final',
));
$router[] = new Route('<page>', array(
'presenter' => 'Page',
'action' => 'default',
));
$router[] = new Route('s/monitoring', array(
'presenter' => 'Monitoring',
'action' => 'default',
));
$router[] = new Route('affilate/default', array(
'presenter' => 'Affilate',
'action' => 'default',
));
$router[] = new Route('affilate/admin', array(
'presenter' => 'Affilate',
'action' => 'admin',
));
?>
Děkuji.
- SyXcz
- Člen | 75
píšeš
<?php
$router[] = new Route('/404/', array(
'presenter' => 'Eror',
'action' => 'default',
));
?>
ty lomítka tam mít nemusíš (aspoň si to myslim) a hlavně ti tam chybí jedno „r“
<?php
$router[] = new Route('404', array(
'presenter' => 'Error',
'action' => 'default',
));
?>
popř. máš nastavenej Error Presenter v bootstrapu ?
Editoval SyXcz (1. 4. 2010 20:30)
- MzK
- Člen | 127
Error presenter v bootstrapu je,
<?php
$application->errorPresenter = 'Error';
//$application->catchExceptions = TRUE;
$application->catchExceptions = Environment::isProduction();
?>
To „e“ jsem opravil, ale stále je divné, že komponenta nefunguje,
pokud se aktivuje error Presenter..
Ten error Presenter je nějak speciální než ostatní presentery?