Django代码中的'_'是什么意思?
为什么这个Django代码在'has favicon'前面加了一个_
呢?
has_favicon = models.BooleanField(_('has favicon'))
3 个回答
9
_
通常是来自 gettext 的一个宏或函数,它的意思是这个参数是一个本地化的字符串。这个用法不仅限于 Django 或 Python。实际上,gettext 最初是为 C 语言程序开发的,后来被移植到了许多其他编程语言中。
11
在Django中,_
是一个用来处理文本翻译的约定。它其实是一个叫做ugettext_lazy的别名。想了解更多关于这个的内容,可以查看文档中的懒翻译部分。
37
如果你查看导入的语句,你会发现它们把 _ 这个符号和一个函数联系在了一起,这个函数的作用是把内容转换成unicode格式,并通过写入的方式进行本地化。
from django.utils.translation import ugettext_lazy as _