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.

Вернуться на верх