我的Django模板中有以下循环:
{% for item in state.list %}
<div> HTML (CUSTOMERS BY STATE) </div>
<!-- print sum of customers at bottom of list -->
{% if forloop.last %}
<h4>{{ forloop.counter }} Valued Customers</h4>
{% endif %}
{% endfor %}
很明显,如果我最后只有一个客户,我想打印单数“有价值的客户”
根据Django的docs,应该使用
blocktrans
。Tried the following, a few flavors of nesting: {% blocktrans count %}
{% if forloop.last %}
<h4>
{{ forloop.counter }}
Valued Customer
{% plural %}
Valued Customers
</h4>
{% endif %}
{% endblocktrans %}
Keep getting TemplateSyntaxError: Invalid block tag: 'blocktrans', expected 'empty' or 'endfor'
没有办法和另一个循环结合吗?有什么办法解决吗?谢谢!
最佳答案
。在模板顶部添加以下行:
{% load i18n %}
修复之后,注意对于
blocktrans
之后的count
标记,应该指定一个变量,该变量的值将用于复数检测,因此您可能需要{% blocktrans count count=forloop.counter %}