Chybné action v errorPresenteru
- oh
- Člen | 2
Dobrý den,
používám skeleton z verze 2.0 pro PHP 5.2 a v bootstrapu mám zapnuto
odchytávání vyjímek a nastaveno routování:
<?php
...
$application->errorPresenter = 'Error';
$application->catchExceptions = TRUE;
...
$router[] = new NRoute('<presenter>/<action>/<id>', array(
'presenter' => 'Homepage',
'action' => 'default',
'id' => NULL,
));
...
?>
V případě špatně zadaného presenteru dojde ke korektnímu zobrazení chyby 404 z errorPresenteru, ale pokud je presenter dobře a je zadaná neexistující action, dojde k zobrazení nette 500 na místo mé 404(500) z errorPresenteru. Podařilo se mi zjistit, že se v errorPresenteru hledá ona neexistující akce, tedy neexistující šablona a proto je zobrazena nette 500.
Jak mohu zajistit, aby se při špatně zadané action, zobrazila má vlastní chybová hláška, která se zpracovává v renderDefault v errorPresenteru (neupravovaný ze skeletonu)?
Děkuji za pomoc.
- bojovyletoun
- Člen | 667
mě to jde Ok. Zkus si hodit na začátek renderDefault v ErrorPresenteru
var_dump($exception->__toString());
, jestli je to fakt
BadRequestException, podle toho se kód větví (níže).(níže)
Jo a ještě: pokud se zobrazí 500, tak se podívej do složky, log, protože takové chyby se logují
Editoval bojovyletoun (4. 1. 2011 12:59)
- oh
- Člen | 2
Moje chyba, omlouvám se! Daný problém vznikl použitím „patche“, z důvodu špatného generování odkazů viz. https://forum.nette.org/…ovani-odkazu?…