Zkrácení {ifset} v šabloně

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

Ahoj,
hledal jsem nějaký nejjednodušší zápis jak vypsat v šabloně proměnnou, která může být prázdná nebo ani nemusí být definována, abych se vyhnul zbytečně dlouhé konstrukci, ve které musím proměnnou zadávat dakrát:

{ifset $var}{$var}{/ifset} či {isset($var) ? $var}

Něco na způsob n:makra n:if=, ale bez vazby na HTML element – něco na způsob:

{?$var} nebo {ifset $var /} nebo tak nějak...

Existuje nějaký takový zápis?

Grelek
Člen | 233
+
0
-

Obávám se, že ne.

Jan Tvrdík
Nette guru | 2595
+
0
-

@Šroubek: Můžeš použít

{ifset $var}{$var}{/}

Nebo proměnou inicializovat makrem {default $var = NULL}

Šroubek
Člen | 8
+
0
-

@Grelek: Toho jsem se bál – škoda.

@Jan Tvrdík: Bohužel ani jedno z těchto řešení příliš nezkrátí zápis a ani nepřispěje k přehlednosti šablony :-(

I tak díky za odpovědi

Editoval Šroubek (19. 3. 2013 22:51)