nacteni sablony v presenteru
- OK3
- Člen | 91
Něco podobného jsem řešil: https://forum.nette.org/…-do-promenne
V zásadě jde o to, že si vytvoříš šablonu, zaregistruješ proměnné a pak objekt přetypuješ na string.
Editoval OK3 (30. 5. 2011 10:46)
- geosup
- Člen | 16
Tak jsem to vyzkousel a dopracoval jsem se k tomu, ze mi to teda nacita tu latte sablonu. Ale kdyz se pokusim zaregistrovat makra, tak to prestane fungovat. Dokonce bez presne chyby. Vraci to jenom chybu 500. Zjistil jsem jenom, ze problem nastane v metode render(), ale nedari se mi zjistit, v cem ten problem vezi.
kod:
$temp = new FileTemplate();
$latte = new \Nette\Latte\Engine;
$macroSet = new \Nette\Latte\Macros\FormMacros($latte->parser);
$temp->registerFilter($latte->parser);
$temp->registerHelper('escape', 'DefaultHelpers::escapeHtml');
$temp->registerHelper('escapeJs', 'DefaultHelpers::escapeJs');
$temp->registerHelper('escapeCss', 'DefaultHelpers::escapeCss');
$temp->setFile('sablona.latte');
$this->sendResponse(new JsonResponse(array(
'html' => $temp->__toString(),
)));
Editoval geosup (16. 6. 2011 9:57)
- bojovyletoun
- Člen | 667
chyba 500 znamená, že je potřeba zapnout laděnku a podívat se na
chybu.
Jinak myslím, že to, čeho chceš dosáhnout výše, by šlo nějakým
způsobem dosáhnout efektněji, jen nevím jak.(nástřel
$this->payload->html=(string)$this->template;$this->sendPayload();
)
- geosup
- Člen | 16
bojovyletoun napsal(a):
chyba 500 znamená, že je potřeba zapnout laděnku a podívat se na chybu.
Jinak myslím, že to, čeho chceš dosáhnout výše, by šlo nějakým způsobem dosáhnout efektněji, jen nevím jak.(nástřel$this->payload->html=(string)$this->template;$this->sendPayload();
)
no ladenku sazmorejme zapnutou mam… ale vzhledem k tomu, ze tenhle kod se vykonava ajaxove, tak se ladenka vubec nezobrazi…
je nejaka moznost, jak debugovat ajaxove volani v nette ?
Editoval geosup (16. 6. 2011 13:34)