gpt4 book ai didi

python - 将 blocktrans 与 "with"和 "count"关键字一起使用

转载 作者:行者123 更新时间:2023-11-30 23:53:52 24 4
gpt4 key购买 nike

是否可以将{% blocktrans %}与“with”和“count”同时使用?

文档仅描述了单独使用:

{% blocktrans with foo|filter as bar and baz|filter as boo %}
{% blocktrans count var|length as count %}


我需要打印一个变量的值,而翻译取决于另一个变量。我尝试了以下代码:

{% blocktrans count cnt as count with cnt|make_text_from_count as text_count %}
and other {{ text_count }} city
{% plural %}
and other {{ text_count }} cities
{% endblocktrans %}

它显示 text_count 变量的值,但不翻译文本。


Python 2.6.6、Django 1.3、django 模板。

最佳答案

是的,这是可能的。您只需要注意 blocktrans 参数的顺序:with 需要紧随其后的局部变量绑定(bind),以及 count 及其各自的变量之后是变量绑定(bind)。

documentation (至少对于 1.5 版)有几个复数示例。第二个示例(作为“更复杂的示例”介绍)显示了同时使用 withcount 时的顺序:

{% blocktrans with amount=article.price count years=i.length %}
That will cost $ {{ amount }} per year.
{% plural %}
That will cost $ {{ amount }} per {{ years }} years.
{% endblocktrans %}

如果除了计数器变量之外不需要任何其他变量,则根本不要使用关键字 with。这在更复杂的上面记录的第一个示例中显示:

{% blocktrans count counter=list|length %}
There is only one {{ name }} object.
{% plural %}
There are {{ counter }} {{ name }} objects.
{% endblocktrans %}

关于python - 将 blocktrans 与 "with"和 "count"关键字一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5416027/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com