Django代码中的'_'做什么?

问题描述 投票:9回答:3

为什么这个Django代码在'has favicon'前面使用_

has_favicon = models.BooleanField(_('has favicon'))
python django internationalization gettext
3个回答
26
投票

如果你查看import语句,你会发现它们将_绑定到一个函数,该函数将东西转换为unicode并通过编写本地化:

from django.utils.translation import ugettext_lazy as _

10
投票

Django中的_是一种用于本地化文本的约定。它是ugettext_lazy的别名。阅读文档中的Lazy translation以获取更多信息。


9
投票

_通常是来自gettext的宏/函数,它意味着参数是一个本地化的字符串。这不仅限于Django或Python。事实上,gettext最初是C程序的一个包,多年来移植到许多其他语言。

© www.soinside.com 2019 - 2024. All rights reserved.