Generování template v modelu – chyba v odkazování
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Phalanx
- Člen | 310
Ahoj, rád bych Vás poprosil o radu. Snažím se rozjet podle návodu https://phpfashion.com/…-a-nette-2-3 vygenerování šablony v modelu. Používám Nette 2.3.7.
Zkusil jsem předat parametrem přímo presenter (což je hnus) ale s ním to funguje. Pokud použiji linkGenerator dostávám chybu:
Nette\Bridges\ApplicationLatte\Template::__toString(): Presenter name must be alphanumeric string, ‚:Front:Order‘
<?php
class Model extends Nette\Object
{
public function getSomeTemplate($presenter, $order, $lang)
{
$template = $this->templateFactory->createTemplate();
$template->setFile('../templates/file.latte');
$template->_control = $this->linkGenerator; // hodí výše uvedenou chybu na posledním řádku return (string) $template;
//$template->_control = $presenter; -- funguje
$template->order = $order;
return (string) $template;
}
}
?>
v template mám:
<a href="{$base_url}{link :Front:Order:abc $order->id}">odkaz</a>
Děkuju
- Zuben45
- Člen | 268
vyzkoušej přes
Latte\Engine
API: Latte\Engine
Ukázka použití https://latte.nette.org/cs/#…
Editoval Zuben45 (4. 1. 2016 14:17)
- David Matějka
- Moderator | 6445
LinkGenrator vzdy pouziva absolutni destination, takze smaz to :
na zacatku v :Front:Order