ImportError ugettext_lazy as _

Я использую Django 4 для моего webApp и я начал получать эту ошибку, когда я хочу установить аутентификацию. Я проверил все форумы и нашел, что они предлагают импортировать gettext_lazy как _. Но это не работает. Есть какие-нибудь предложения? Вот ошибка, которую я получаю при попытке запустить сервер разработчиков:

    from django.utils.translation import ugettext_lazy as _
ImportError: cannot import name 'ugettext_lazy' from 'django.utils.translation' (/Users/intelligentica/PycharmProjects/DockerDjangoReactProject/backend/mainapp/venv/lib/python3.9/site-packages/django/utils/translation/__init__.py)

Я начал получать ошибки сразу после попытки настроить аутентификацию пользователя:

from django.urls import path
from users.views import APILoginView, APILogoutView
from rest_framework.authtoken import views as authtoken_views

urlpatterns = [
    path('login', APILoginView.as_view(), name='api_login'),
    path('logout', APILogoutView.as_view(), name='api_logout'),
    path('generate-api-token', authtoken_views.obtain_auth_token)
]

Установленный вами пакет не поддерживает Django 4 и включает ugettext_lazy, который Django 4 не поддерживает.

Попробуйте переустановить этот пакет pip uninstall djangorestframework pip install djangorestframework

или вы можете попробовать изменить все ugettext_lazy на gettext_lazy в папке этого пакета.

например. Django 2.2:

from django.utils.translation import ugettext_lazy as _

Django 2.2>:

from django.utils.translation import gettext_lazy as _
Вернуться на верх