Jak vlozit <a href=„{link..}“> do sablony z databaze?

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

Zdravim,
mam nette verziu pre php 5.3 se jmennymi prostormi

Texty na web si taham z databaze, kde ho mam ulozeny aj s html kodom, priklad:

<p>Pro naplánování směn se musíte <a href="{link Homepage:prihlaseni}">přihlásit</a>. Pokud ještě nemáte účet, musíte se <a href="{link Homepage:registrace}">registrovat</a>.</p>

Potom mam v HomepagePresenter nasledujuce:

<?php
public function renderPlanovani()
    {
	//Content je mnou definovany model, getContent - metoda na ziskavanie textu
        $result = Content::getContent('plan');
        $this->template->text = $result['text'];
    }
?>

v sablone planovani.latte mam potom:

{block content}
{!$text}

Problem je ze <a href=„{link Homepage:prihlaseni}“> potom vobec nefunguje..pokial to mam napisane natvrdo v sablone a netaham z databazy tak to ide, routy mam k tomu napisane dobre..jak tohle vyresit?dakujem za radu

hizo
Člen | 48
+
0
-

nemozem to rozbehat..v presenteri stale pise Class ‚Nette\Templates\Filters\LatteFilter‘ not found
na riadku: $template->registerFilter(new LatteFilter);
no pritom mam v presenteri:

<?php
use Nette\Environment;
use Nette\Templates\Filters\LatteFilter;
?>

a triedu StringTemplate som definoval ako:
class StringTemplate extends Nette\Templates\Template

redhead
Člen | 1313
+
0
-

Podle verze Nette jakou používáš. Přejmenovávali se namespacy, zkus Nette\Templates\LatteFilter nebo si ten soubor najdi a podívej v jaké je namespace.

David Grudl
Nette Core | 8170
+
0
-

Při každé aktualizaci Nette smaž cache.

hizo
Člen | 48
+
0
-

zmazal som, stale ta ista chyba
prosim pomozte nemozem sa pohnut dalej

Editoval hizo (16. 2. 2011 20:18)

hizo
Člen | 48
+
0
-

Vyriesene tymto sposobom:

<?php
$template1 = new StringTemplate();
$template1->presenter = Environment::getApplication()->getPresenter();
$template1->registerFilter(new LatteFilter);
$template1->content = $neconaprzdb;

$this->template->blok1 = $template1;
?>

a v šabloně {include $blok1}

David Grudl
Nette Core | 8170
+
0
-

Místo use Nette\Templates\Filters\LatteFilter; tam patří use Nette\Templates\LatteFilter;