2013-11-02 36 views
15

İç içe geçmiş başka bir işlev uygulayabiliyor musunuz? Aşağıdaki denedim ama çalışmıyor:Diğer İçindekiler İçindekiler

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

cevap

31

elseif ihtiyaçları tek bir kelime etiket/anahtar kelime ve ifade if ifadesi olarak aynı parantez olmamalıdır.

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

Sen lutfen ifadenizi kısaltmak için ternary operator kullanabilirsiniz ...

... ve muhtemelen class=".." bölümünü tekrarı olmamalıdır.

<body class="{{ page|default('login') in ['other','login'] ? 'login' : 'noclass' }}"> 
İlgili konular