2013-11-02 6 views
15

में और अधिक नेस्टेड किया गया है अगर घोंसला में कार्यक्षमता को लागू करने का कोई तरीका है? मैं निम्नलिखित की कोशिश की है, लेकिन यह काम नहीं कर रहा:ट्विग

<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

आप अच्छी तरह से ternary operator उपयोग कर सकते हैं अपने बयान छोटा करने के लिए ...

... और आप शायद class=".." हिस्सा दोहराना नहीं चाहिए।

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