{if a< 50} ... {elif a> 50和< 75} .... {else}无法解析

时间:2014-08-06 07:40:28

标签: django if-statement django-templates

我想在Django 1.6中使用一个模板,其中显示的内容取决于变量值的间隔。

例如,

{if a < 50} (case 1)
{elif a>50 and a<75} (case 2)
{else} (case 3)

所以:如果a等于80,模板会显示案例&#39; 3&#39;如果a是30,那么情况&#39; 1&#39;等等...... / p>

但是我得到了错误:

Could not parse the remainder

我尝试过使用嵌套if(但显然,Django 1.6支持elif),但它没有用。

显然,情况是&#39; 2&#39;这是因为删除它使其正常运行的问题。

1 个答案:

答案 0 :(得分:3)

您忘记了代码中的%字符。您还需要{% endif %}标记来完成条件块:

{% if a < 50 %} 
    (case 1)
{% elif a < 75 %} 
    (case 2)
{% else %} 
    (case 3)
{% endif %}

请注意,a > 50elif中没用,因为您确定它是真的(否则,它会执行&#34;案例1&#34;。

参考:Built-in template tags and filters - if (Django documentation)