AJAX 500, prázdný obsah odpovědi

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

Dělám teď na menším projektu a je to mé poprvé s Nette 2.0 (verze z download sekce) a narazil jsem na problém s AJAXem.

Po kliknutí na AJAXový link odejde požadavek a vrátí se s odpovědí 500, přičemž obsah odpovědi je úplně prázdný.

Dřív mi Laděnka vypisovala chyby i do asynchronních odpovědí, ale teď to z ní nemůžu dostat :(

  • Error presenter nepoužívám
  • Debug::DEVELOPMENT; při běžné chybě se Laděnka zobrazí
  • zavináče mám, ale zkoušel jsem to i bez nich
  • {snippet test} i {snippet:test}
Jan Tvrdík
Nette guru | 2595
+
0
-

Nemůžeš to odkrokovat debuggerem? Nebo aspoň pomocí exit. Případně zkus FireLogger addon pro FF.

pekelnik
Člen | 462
+
0
-

Zapni produkční mód pro Nette < 2.0 nebo definuj Debug::$logDirectory pro Nette 2.0 a leděnka ti uloží celou RSOD do souboru.

na1k
Člen | 288
+
0
-

Super, něco už mám – pomohlo nastavení cesty pro logování a už mám tušení kde asi se něco děje.

Podle všeho to nějak souvisí s děděním šablon. Mám následující „strukturu“:

  • @layout.phtml – jediný pro celý web; definuje bloky menucontent
  • @sublayout.phtml – jeden pro každý modul; rozšiřuje @layout.phtml a plní blok menu obsahem
  • default.phtml – běžná šablona akce v modulu; v BasePresenter nastavuju layout na sublayout

A chyba řve, Missing template file 'E:\Web\zz1\document_root/../app/AdminModule/templates/1'

Postupně se renderuje šablona akce, pak sublayout, kde se volá extend, ale namísto cesty se v $destination předá TRUE, což nakonec vyústí v jedničku jako název souboru.

Víc ale dohledat asi neumím :(

Celý error dump zde

Editoval na1k (7. 10. 2010 13:35)

Jan Tvrdík
Nette guru | 2595
+
0
-

Chybí zavináč před {layout ...} resp. {extends ...}.

na1k
Člen | 288
+
0
-

Holy sh…!

Tak teď se ale maximálně stydím! :-[

Díky za proplesknutí a jdu si na chvíli poklečet do kouta na hrách…