django中文格式错误(或除英语以外的任何语言?)

django中文格式错误(或除英语以外的任何语言?),django,Django,我想知道表单错误是否可以用中文或其他语言显示 这就是我如何得到我的错误 {{ form.field_name.errors }} 如果在表单消息中使用uu,则消息将显示在右侧栏中!但是,如果要检查模板中运行的是哪个lang,可以使用: {% if LANGUAGE_CODE != "ch" %} {% endif %} 有关在表单中使用uu的更多信息,请查看以下内容:如果在视图中设置语言,则错误消息将以所选语言打印: from django.utils.translation im

我想知道表单错误是否可以用中文或其他语言显示

这就是我如何得到我的错误

{{ form.field_name.errors }}

如果在表单消息中使用uu,则消息将显示在右侧栏中!但是,如果要检查模板中运行的是哪个lang,可以使用:

{% if LANGUAGE_CODE != "ch" %}

{% endif %}

有关在表单中使用uu的更多信息,请查看以下内容:

如果在视图中设置语言,则错误消息将以所选语言打印:

    from django.utils.translation import activate
    activate('de')

先快速解释一下:

表单字段错误来自

raise forms.ValidationError(_("My Error Message"))
在Django(可能也在其他地方),常见的情况是:

from django.utils.translation import ugettext_lazy as _
这将
\u
转换为
ugettext\u lazy
,即上面的代码实际上是:

raise forms.ValidationError(ugettext_lazy("My Error Message"))
但为了避免反复输入ugettext_lazy(或您的翻译函数),我们只需将其映射到
\u

回答您的问题

最后,回答您关于错误是否可以用中文(或其他语言)显示的问题。这取决于验证错误消息是否传递到django.utils.translation.ugettext。在上面的示例中,如果用户的语言代码是zh tw或zh cn,“我的错误消息”将以中文翻译显示

下面是一个没有翻译的例子:

raise forms.ValidationError("My Error Message")

我强烈推荐阅读:因为你还需要做一些额外的工作才能使译文正确地显示出来。

你能给我举个例子吗?我在哪里添加_