Ošetření nezachycené výjimky, která zabraňuje i spuštění ErrorPresenteru
- Milanov
- Člen | 51
Představte si případ, kdy mi vypadne např. databáze a spustí se ErrorPresenter s chybou 500. Tento presenter ale dědí od BasePresenteru, ve kterém se nějaké věci s databází řeší, třeba nastavení ve startup() nebo jiné věci v beforeRender(). Potom mi spadne i ErrorPresenter a místo mé chybové stránky se zobrazí zřejmě implicitní stránka, která je zadrátovaná ve frameworku. Mimo jiné se mi uloží log o chybě v ErrorPresenteru.
Jenže jiné chyby, třeba 404, potřebují, aby ErrorPresenter dědil od BasePresenteru, protože zrovna chybová stránka 404 zobrazuje běžný layout. No a jak teď z toho ven? Jak to udělat, aby některé chyby měly běžný layout s daty z DB a jiné, třeba výpadek DB, měly speciální layout (a potažmo i jiného předka v ErrorPresenteru), který nepotřebuje DB.
- David Matějka
- Moderator | 6445
napada me na application navazat callback onError a v nem podle typu vyjimky nastavit $errorPresenter