Renderování samostatné šablony
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- tomaass
- Člen | 74
Ahoj,
mám stránku, na ní čudlík, zmáčknu ho a ajax načte část stránky, která se nachází v samostatném souboru (template). Problém je ten, že ta šablona se nezkompiluje/nerenderuje → zůstávají v ní makra a v syrovém stavu se zobrazuje do stránky.
Obsluha klikance ajaxem v presenteru:
public function handleLoadBrandList($type)
{
// Načtení dat z modelu
$DB = new DBtoWEB;
$brands = $DB->Get_Present_brands($type);
// Nacucnutí templatu
$template = new Nette\Templating\FileTemplate(APP_DIR.'/templates/Default/_brandlist.latte');
// Vyplnění parametrů
$template->setParameters(array('brands'=>$brands, 'type'=>$type));
$template->compile(); // todleto nevim k čemu, stejně to nefachá
$template->render(); // výstup?
$this->sendPayload();
}
Výstup do stránky (jak to vypadá v souboru templatu === to co pak pošle server):
{foreach $brands as $i=>$brand}
<a n:href="odkazNaHledani!, serialize(array('inzert_type'=>$type,'producer_text'=>$brand['producer_text']))" class="bilyText">
{$brand['producer_text']} ({$brand['count']})
</a>
<br />
{* Separátor *}
{if ((($i+1) % 16)==0)}
</td><td width="310" style="padding-left:13px; background: url('images/inzert/column_separator.png') no-repeat top left;">
{/if}
{/foreach}
Já bych samozřejmě chtěl, aby to tu šablonu zkouslo a né poslalo tak
jak je.
Vůbec nevim co je špatně, ale pravděpodobně toho bude dost.