django locale-url导入错误,无法从'django.core'导入'name'为'urlresolvers'的名称。

5 浏览
0 Comments

django locale-url导入错误,无法从'django.core'导入'name'为'urlresolvers'的名称。

我正在阅读文档。\n这是导入语句:\n

from django.core import urlresolvers

\n我遇到了这个错误:\n

ImportError: 无法从'django.core'中导入名称'urlresolvers'
(xxx/nbrl-project/nbrlenv/lib/python3.8/site-packages/django/core/__init__.py)

\n有人可以帮我解决吗?

0
0 Comments

问题的原因是在使用django-allauth时,设置文件settings.py中存在一个错误的配置。解决方法是删除这个错误的配置,并正确配置django-allauth。

错误的配置是在设置文件settings.py中包含了"allauth.account.auth_backends.AuthenticationBackend"这一行。这行配置的作用是将django-allauth的认证后端添加到认证后端列表中。然而,由于某种原因,这个配置导致了导入错误。

为了解决这个问题,我们需要删除这一行配置。删除方法是在设置文件settings.py中找到包含"allauth.account.auth_backends.AuthenticationBackend"的那一行,并将其删除。

此外,我们还需要正确配置django-allauth。具体配置方法可以参考django-allauth的官方文档或相关教程。通过正确配置django-allauth,我们可以确保它的认证后端能够正常工作,而不需要手动添加错误的配置。

总结起来,问题的原因是错误的配置导致了导入错误。解决方法是删除错误的配置,并正确配置django-allauth。通过这些步骤,我们可以避免出现"django locale-url import error cannot import name 'urlresolvers' from 'django.core'"这个错误。

0
0 Comments

问题原因:django-localeurl库已经停止维护,并且其方法已被Django自身引入的支持多语言URL模式所取代。

解决方法:不要使用django-localeurl库,而是使用Django自带的URL国际化功能。具体步骤可以参考Django官方文档中的URL国际化部分(https://docs.djangoproject.com/en/3.1/topics/i18n/translation/#url-internationalization)。另外,尽量避免使用Django和其他库的未维护版本,以免引起其他麻烦。

0
0 Comments

问题的出现原因是导入的模块名称错误。在Django的较高版本中,django.core.urlresolvers模块已被移动到django.urls模块。因此,无法从django.core中导入urlresolvers。

解决方法是使用正确的模块导入语句。在较高版本的Django中,应使用以下语句导入reverse函数:

from django.urls import reverse

同时,建议保持Django版本更新到最新版本,因为不再支持1.3版本。Django 1.3版本已经非常老旧,自2011年起不再维护。如果有选择的话,特别是在开始新项目时,请不要再使用1.3版本。而且,django-localeurl库也已不再维护,最后一次提交是在2015年。Django已经内置了处理URL国际化的方法,可以在官方文档中查看相关信息。

所以,可以说localeurl库已经不推荐使用,而是建议使用Django的内置功能来处理URL国际化。

0