Debug bar data při Ajaxu
- Rampa
- Člen | 65
Ahoj,
nevím jestli už se totu neřešilo, ale nikde jsem nenašel.
Docela by se mi někdy hodily data debug baru i při ajaxu (dump, dibi prof.
…). Trošku jsem o tom přemýšlel a možná by to šlo udělat takhle:
Celý debug bar obalit snippetem a upravit v třídě presenteru metodu
invalidate control, že by při volání automaticky invalidovala i debug bar
snippet. Tím by se zajistilo, že pokud se bude posílat nějaký snippet,
pošle se i bar.
šlo by to tam nějak?
// edit
omlouvám se za ty tečky v nadpisu, ale chce to 25 znaků a nenapadlo mě jak
předělat nadpis do požadované délky :)
Editoval Rampa (21. 7. 2010 9:19)
- Foowie
- Člen | 269
Určitě pro, na tohle si taky v duchu občas postěžuju :)
Jinak radši než „změnit metodu invalidace presenteru“ bych dal do metody
beforeRender
v presenteru, něco jako
if ($this->isAjax())
$this->invalidateControl("nette_debug_bar");
(Osobně tak invaliduju automaticky pokaždé flash messages pokud nejsou prázdné)
- redhead
- Člen | 1313
Problém je, že Debug Bar není žádná komponenta (control), kterou obsahuje presenter (!). Takže se nemá co invalidovat. Ale možná by šlo najít kód který se stará o vykreslení baru, a „okopírovat“ ho někam do beforeRender nebo podobně a vkládat výsledek do payloadu. Ale to je jen taková má myšlenka, možná to nepůjde, tak snadno.
- Rampa
- Člen | 65
No já nevím co dělám špatně, ale mě se ve Firebugu z Nette vůbec nic
nezobrazuje.
Mám FB 1.6X. Když napíšu debug::firelog(‚pokus‘), tak FB zobrazí jen
snippety a musím se přepnout do hlavičky požadavku a tam pracně najít ten
řádek, který vypadá takto:
X-Wf-nette-1-1-n1 |[{"Type":"LOG","Label":null},"pokus"]|
…
O dibi profileru tam samozřejmě není nic…
Takže používám jen v opravdové nouzi… :(
Editoval Rampa (22. 7. 2010 12:36)