我正在更新一个非常老的Django项目,并尝试使用RegistrationSupplementBase,但是在导入时出现此错误消息:
File "/home/projectmachine/Desktop/project_rebuild/projectname/models.py", line 11, in <module>
from registration.supplements.base import RegistrationSupplementBase
File "/home/projectmachine/.local/share/virtualenvs/projectname-QrYA9Qp-/lib/python3.6/site-packages/registration/supplements/base.py", line 9, in <module>
from django.utils.text import ugettext_lazy as _
ImportError: cannot import name 'ugettext_lazy'
我不知道怎么了。似乎已安装依赖性。我正在使用Django 2.2和django-inspectional-registration 0.6.2
这是我导入课程的方式:
from registration.supplements.base import RegistrationSupplementBase
答案 0 :(得分:1)
我不知道怎么了。似乎已安装依赖性。我正在将Django 2.2与
一起使用django-inspectional-registration
0.6.2
该功能已移至django.utils.translation
模块,因此您可以通过以下方式导入该功能:
from django.utils.translation import ugettext_lazy as _
基于Django Deprecation Timeline [Django-doc],ugettext_lazy
将在django-4.0中被删除。您可以改用gettext_lazy
:
from django.utils.translation import gettext_lazy as _
但是,基于GitHub repository of django-inspectional-registration
,该项目不再处于活动状态:最近一次提交是在2016年11月。您可以尝试更新该项目,但是最好寻找一个可在其中运行的替代软件包。类似的方式。