ImportError : невозможно импортировать имя 'ugettext_lazy'
Я пытаюсь установить костюм, я ввел эту команду : pip install https://github.com/darklow/django-suit/tarball/v2 и написал этот код :
from suit.apps import DjangoSuitConfig
class SuitConfig(DjangoSuitConfig) :
layout = 'horizontal'
И добавил его :
INSTALLED_APPS = [
'products.apps.SuitConfig',
.....]
Но когда я добавил этот последний код, у меня возникла ошибка :
InvalidTemplateLibrary: Указана недопустимая библиотека шаблонов. ImportError raised when trying to load 'suit.templatetags.suit_menu': cannot import name 'ugettext_lazy' from 'django.utils.translation' (C:\Users\hp\environments\env3\lib\site-packages\django\utils\translation_init_.py)
примечание: django 4.01
Я как раз собирался спросить версию, но примечание (django 4.01) помогло. 'ugettext_lazy', похоже, используется и приложением, которое вы пытаетесь использовать.
'ugettext_lazy' был устаревшим для django 3+, поэтому вы не сможете использовать его с django версии >= 3. https://code.djangoproject.com/ticket/30165
У меня такая же проблема при использовании django-hitcount
views.py
from hitcount.views import HitCountDetailView
class PostDetailView(HitCountDetailView):
model = Post
template_name = 'blog/post.html'
slug_field = "slug"
count_hit = True
settings.py
INSTALLED_APPS = [
'hitcount',
.....]
Один ответ ugettext_lazy был удален в Django 4.0 57. Пожалуйста, используйте gettext_lazy вместо этого. ""
from django.utils.translation import gettext_lazy as _
Я поместил эту строку кода в views.py и получил ту же ошибку.
Я решил проблему, установив django==3.2 вместо последней версии Django. Но я все еще буду проверять обновления pypi для использования в последней версии Django.