Django密码= models.CharField(_('密码'),max_length = 128)

Lon*_*Dev 0 python django django-models

下划线在此行中有什么相关性('密码')?

password = models.CharField(_('password'), max_length=128)

我查看了Django文档,并指出模型字段定义中的第一个参数是'详细名称',但是在这种情况下我无法找到下划线的相关性?

我正在查看的整个文件是:https: //github.com/django/django/blob/master/django/contrib/auth/models.py

谢谢,马克

Sim*_*ser 5

下划线是表示此字符串可用于翻译的常用方法:

 from django.utils.translation import ugettext_lazy as _
Run Code Online (Sandbox Code Playgroud)

这意味着字符串将显示在收集这些字符串的工具中,并将它们替换为已翻译的字符串(例如,请参阅GNU gettext).这种方法不仅用于Python,还用于需要翻译字符串的其他编程语言/项目.

如果您要更改Django网站的语言,它将知道显示不同的字符串而不是'password'(取决于可用的翻译,否则它将默认返回到此英文字符串).