Komponenty v latte šabloně z databáze

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

V databázi mám HTML článku (stránky) a rád bych občas někam do obsahu přiložil dynamickou komponentu (např. formulář, galerie, ..).
Následující kód vezme obsah z databáze a vygeneruje do proměnné přes Latte.

<?php
$latte = new \Latte\Engine();
$latte->setLoader(new \Latte\Loaders\StringLoader());
$this->template->rendered=$latte->renderToString($page->content, []);
?>

Nicméně to nezná makro {control}.. Jak jej ho naučit? A jak tam přiložit vytvořenou komponentu?


Prý nemohu odpovídat na otázku, kterou jsem sám položil. Přišel jsem na řešení, a tak jej vkládám sem:
ŘEŠENÍ spočívá v tom, že netvořím nový Latte\Engine, ale vezmu si jej z presenteru. Zbytek je obdobný:

<?php
$template = $this->createTemplate();
$template->getLatte()->setLoader(new \Latte\Loaders\StringLoader);
$this->template->rendered=$template->getLatte()->renderToString($page->content,$template->getParameters());
?>

Editoval vcernik (1. 7. 2015 23:14)