2013-11-02 5 views
15

twigにネストされたif else関数を実装する方法はありますか?私は、次のことを試してみましたが、それは動作していない:Twigでelseがネストされている場合

<body 
     {% if page|default('login') == 'login' %} 
       class="login" 
     {% else if(page == 'other') %} 
       class="login" 
     {% else %} 
       class="noclass" 
     {% endif %}> 
</body> 

答えて

31

elseifは、タグ/キーワードや表現がif式と同じ括弧を持つべきではない単一の単語にする必要があります。

http://twig.sensiolabs.org/doc/tags/if.html

<body 
    {% if page|default('login') == 'login' %} 
      class="login" 
    {% elseif page == 'other' %} 
      class="login" 
    {% else %} 
      class="noclass" 
    {% endif %}> 
</body> 
8

あなたがaswellあなたの文を短くするternary operatorを使用することができます...

...とあなたはおそらく class=".."一部を繰り返してはなりません。

<body class="{{ page|default('login') in ['other','login'] ? 'login' : 'noclass' }}"> 
関連する問題