Použití šablony ze stringu nebo souboru

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

Spíš jenom technická. (Nette 2.2.0)
Pokud jsem to pochopil správně: když chci použít šablonu ze souboru, dám

<?php
$temp="template.latte";
$latte->render($temp, $params);
?>

pokud mám v $temp přímo šablonu jako string, je syntaxe stejná, akorát před tím použiju

<?php
$latte->setLoader(new Latte\Loaders\StringLoader);
?>

Sorry, ale to je hrozný zmatek, nešlo by pro to raději udělat jinou funkci, renderString() nebo tak něco?
Nebo to lze udělat jinak?

Editoval axis (7. 6. 2014 19:59)

Šaman
Člen | 2659
+
0
-

Přimlouval bych se za nějaký odkaz, třeba na Gist, kde by bylo ukázané best practise na použití samostatných šablon (já je používám hlavně v emailech). A ukázka práce se šablonou v souboru i zadanou v proměnné (třeba vytaženou z db). Je v tom teď skutečně zmatek.

Editoval Šaman (7. 6. 2014 22:49)

axis
Člen | 5
+
0
-
<?php
include 'src/latte.php';
$latte = new Latte\Engine;
$latte->setLoader(new Latte\Loaders\StringLoader); //pokud chci template ve stringu
//$latte->setLoader(new Latte\Loaders\FileLoader); //default. chci template ze souboru
$latte->setTempDirectory('./temp');
$params['hlavni']="Main header" ;
$params['items'] = array('one', 'two', 'three','four');
$temp='<h1>{$hlavni}</h1>
<p n:inner-foreach="$items as $item">
{$item}{sep}, {/sep}
</p>';
//$temp='template.latte';  //soubor se šablonou
$latte->render($temp, $params);
?>