"global name '_' is not defined" 在引发 ValidationError 期间

"global name '_' is not defined" during raising ValidationError

我正在关注 django tutorial 关于在 Django 中筹集 ValidationError 的事情。

不幸的是,即使是最简单的代码片段也无法正常工作。我已将以下代码添加到我的验证器对象中:

raise ValidationError(_('Invalid value'), code='invalid')

出现错误

global name '_' is not defined

我做错了什么?

您错过了这一行:

from django.utils.translation import ugettext as _

对于 Django 3+,这已更改为:

from django.utils.translation import gettext_lazy as _

文档是here