如果在Twig中嵌套了

Kam*_*med 26 conditional symfony twig

有没有办法在twig中实现嵌套的if else功能?我尝试了以下但它不起作用:

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

ada*_*187 49

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>
Run Code Online (Sandbox Code Playgroud)


Nic*_*ich 11

您也可以使用三元运算符来缩短您的陈述......

......你可能不应该重复这个class=".."部分.

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