Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django是否尝试转换模板变量?_Django_Internationalization_Django Templates_Django 1.6 - Fatal编程技术网

Django是否尝试转换模板变量?

Django是否尝试转换模板变量?,django,internationalization,django-templates,django-1.6,Django,Internationalization,Django Templates,Django 1.6,我的模板中有以下代码: {% blocktrans %}Hello, {{ user.username }}!{% endblocktrans %} 这在我的网站上显示为: 你好 我确信变量已填充(因为如果我删除blocktrans标记,它将正确显示),所以我的问题是:Django是否也尝试转换变量?我的工作代码是: {% blocktrans with username=user.username %}Hello, {{ username }}!{% endblocktrans %} 但是

我的模板中有以下代码:

{% blocktrans %}Hello, {{ user.username }}!{% endblocktrans %}
这在我的网站上显示为:

你好

我确信变量已填充(因为如果我删除
blocktrans
标记,它将正确显示),所以我的问题是:Django是否也尝试转换变量?我的工作代码是:

{% blocktrans with username=user.username %}Hello, {{ username }}!{% endblocktrans %}
但是,在Django核心的一个模板中,有以下代码:

{% blocktrans %}You're receiving this email because you requested a password reset for your user account at {{ site_name }}.{% endblocktrans %}

所以我认为这应该行得通,对吗?是否有一个我没有注意到的明显错误?

您可以在
块trans
中使用变量,但无法访问对象属性,因为您正在尝试使用
user.username
。您需要将这些绑定到局部变量,如下所示:


编辑:对不起,我刚刚注意到我误读了你的问题,你提到了本地绑定。但这就是你的答案。您在django core中展示的示例使用的是
site\u name
,而不是
site.name
。不知道你不能使用属性。在某种程度上,我怀疑这就是问题所在,但不确定。
{% blocktrans with amount=article.price %}
That will cost $ {{ amount }}.
{% endblocktrans %}