Error 500 šablona se včlení do stránky místo toho, aby nahradila původní stránku

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Milanov
Člen | 51
+
0
-

Ve větvi Nette 2.0.10 mám problém, že se mi při neodchycené výjimce v render fázi šablona na error 500 začlení do původní stránky, jen se z ní odstraní html a body tagy, jinak tam je celá. Normální stránka se mi prostě pomalu vykresluje v prohlížeči a v místě, kde je vyhozená výjimka se mi zobrazí tato chybová šablona. Očekával bych, že se výstup smaže a zobrazí pouze šablona pro tuto chybu. Šablona na error 404 mi to nedělá. Používám jinak běžně registrovaný ErrorPresenter a šablona vypadá takto: {layout none}<html><head><title>Chyba... Pokud se jedná o neodchycenou výjimku před render fází, tak to je v pořádku. Funkce ob_clean() v actionDefault v ErrorPresenteru nic nedělá. Nevíte někdo, co mám špatně nastaveno nebo čím by to mohlo být?

enumag
Člen | 2118
+
0
-

O tomhle problému vím už dlouho, ale neznám kloudné řešení (zapínat kvůli tomu output buffering je imho fuj). Má někdo nějaký nápad co by se s tím dalo dělat?

Milo
Nette Core | 1283
+
0
-

HTML už odeslané do browseru nevrátíš. Leda vyčistit JavaScriptem.

enumag
Člen | 2118
+
0
-

@Milo: Co takhle implementovat překrývání původního obsahu ala Laděnka?

pitr82
Člen | 121
+
0
-

Zrovna teď řeším tuto „chybu“.
přejmenoval jsem sloupec v tabulce a zapomněl opravit jeden form, a na produkci se mi zobrazila jen modrá stránka, tak jsem se podíval do zdrojového kódu a byla tam vypsána hlavička stránkyaž po fomulář a pak včleněna stránka s chybou včetně úvodních hlaviček.

Chápu správně, že když nastane chyba v komponentě formuláře nebo v šabloně, tak error 500 se již jen doplní do výstupu ?

Jan Endel
Člen | 1016
+
0
-

Ano chápeš správně.

David Grudl
Nette Core | 8239
+
0
-

Mohl by pomoci tento řádek https://github.com/…or/500.latte#L5