Modulární aplikace a vyhazování chybových hlášek (404, 500)
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Manny7
- Člen | 67
Našel jsem už podobné vlákno tady na fóru, ale i po jeho pročtení se
mi problém vyřešit nepodařilo.
ErrorPresenter.php
namespace FrontModule;
use Nette\Debug,
Nette\Application\BadRequestException;
class ErrorPresenter extends BasePresenter {
public function renderDefault($exception) {
if ($this->isAjax()) { // AJAX request? Just note this error in payload.
$this->getPayload()->error = TRUE;
$this->terminate();
} elseif ($exception instanceof BadRequestException) {
$this->setView('404'); // load template 404.phtml
} else {
$this->setView('500'); // load template 500.phtml
Debug::processException($exception); // and handle error by Nette\Debug
}
}
}
bootstrap.php
$application = Environment::getApplication();
$application->errorPresenter = 'Front:Error';
//$application->catchExceptions = TRUE;
Když mám takhle zakomentovaný `catchExceptions `, dostanu chybu ohledně #404, ale když jej odkomentuji, dostanu na výstupu **Server Error
The server encountered an internal error and was unable to complete your request. Please try again later.**
Neměli byste tip na to, jak tam vecpat tu moji template 404.phtml? Díky