如何在模板的if语句中使用Django翻译变量(trans)

7
我遇到了一个Django的问题。以下是我的代码片段:
{% if pageName != 'My page Name' %}
  .....{{ then this }}

现在这对于英语来说很好,但当我将我的应用程序翻译成另一种语言时,pageName也会根据该语言进行更改。因此,上述逻辑不起作用,因为它是硬编码的英语。
所以我必须尝试使用已翻译版本的'My page Name'实现逻辑。但我不能像下面这样直接在if中使用:
{% if pageName != trans 'My page Name' %} 

所以我想把翻译后的版本存储在另一个变量中,然后检查该变量,如下:

{%blocktrans%} "My page Name" {{myvar}} {%endblocktrans%}
{% if pageName != myvar %}

但是这也不起作用,myvar的值为"My page Name",而不是它的翻译版本。

有什么线索可以修复它。提前致谢。


那么 {% trans "我的页面名称" as myvar %} 怎么样? - fragles
@fragles 已经可以运行 :) - curiousguy
1个回答

12

你可以使用trans模板标签,但是这种方式

{% trans "My page Name" as myvar %} 
{% if pageName != myvar %}
...

请参见翻译模板标签


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接