Povedz, že mám nasledujúce _teaser.twig
čiastočné:
<article>
<h2> {{ article.headline }} </h2>
<p> {{ article.lede }} </p>
{% if {{article.byline }} %}
<address>{{ article.byline }}</address>
{% endif %}
</article>
Medzi ktoré zaraďujem tieto spôsoby:
<aside>
{% for article in teasrs %}
{% include "_teaser.twig" %}
{% endfor %}
</aside>
<section>
{% for article in opinion.items %}
{% include "_teaser.twig" %}
{% endfor %}
<section>
S nasledujúcou dátovou štruktúrou v a json
file:
{
"article": {
"headline": "A short headline",
"lede": "A short descriptive lede paragraph"accusantium"
},
"teasers": {
"article1": {
"headline": "Some headline",
"lede": "A lede that describes the article, but without revealing too much, so that users still have a reason to click"
},
"article2": {}
},
"opinion": {
"article": {
"byline": "Anonymous"
},
"items": {
"article1: {},
"article2: {}
}
}
}
V ideálnom prípade by sa mi páčilo, keby premenná, ktorá sa rozhodla, rozšírila rozsah, rovnako ako to robí v prípade Moustache.
Požadovaný výstup je:
<aside>
<article>
<h2> Some headline </h2>
<p>
A lede that describes the article,
but without revealing too much, so that
users still have a reason to click
</p>
</article>
<article>
<h2> A short headline </h2>
<p> A short descriptive lede paragraph </p>
</article>
</aside>
<section>
<article>
<h2> A short headline </h2>
<p> A short descriptive lede paragraph </p>
<address>Anonymous</address>
</article>
<article>
<h2> A short headline </h2>
<p> A short descriptive lede paragraph </p>
<address>Anonymous</address>
</article>
<section>
Pokiaľ mi nič nechýba, špecifikujem predvolené pomocou default()
filter nie je žiaduci, pretože by sa mi páčil predvolenýobsah, ktorý sa má odvodiť z modelu, nie z pohľadu. Napríklad v reklamných ukážkach nechcem mať záložný vedľajší riadok, ale v sekcii Názory by som chcel vždy zobraziť vedľajší riadok so záložnou Anonymous
, pre ktoré použitie default
nepomôže s.
odpovede:
0 pre odpoveď č. 1použitie štandardné rúra
doc : http://twig.sensiolabs.org/doc/filters/default.html
<article>
<h2> {{ article.headline|default("default value) }} </h2>
<p> {{ article.lede|default("default value) }} </p>
</article>