2

在我经常看到的一些 django 模型中

myfield = models.CharField(_('myfield'))
class_name = models.CharField(_('Type'), max_length=128)

究竟是_ and tuple为了什么?我从未在官方 django 教程片段中看到任何此类

4

3 回答 3

5

去看看文件的顶部,但最常见的是这个重命名的导入:

from django.utils.translation import ugettext as _

(所以这是一个函数调用,而不是一个元组)

于 2012-06-21T14:52:46.393 回答
3

然后您没有查看文档的正确位置:

使用函数 ugettext() 指定翻译字符串。按照惯例,将其导入为较短的别名 _,以节省输入。

from django.utils.translation import ugettext as _

def my_view(request):
    output = _("Welcome to my site.")
    return HttpResponse(output)
于 2012-06-21T15:02:24.637 回答
1
from django.utils.translation import ugettext as _

是的,这个库用于翻译你的 django 项目中的所有字符串,当然你必须标记这些翻译字符串,看看这个Django Docs

于 2012-06-21T15:54:15.983 回答