Django 1.8.5 allauth和项目应用程序冲突的名称

时间:2015-10-24 14:05:36

标签: django django-allauth django-1.8

我有一个名为account的django应用程序,它内置了一个自定义用户模型,然后我使用django allauth添加社交登录功能。现在的问题是,在settings.py文件中,以下应用程序名称存在冲突:

  1. myproject.apps.account
  2. allauth.account
  3. 以上引发了以下错误:     django.core.exceptions.AppRegistryNotReady:尚未加载应用。

    在我的settings.py中评论上述任何应用,可以解决错误。我使用https://docs.djangoproject.com/en/1.8/ref/applications/#for-application-users来更改allauth详细应用名称,但我无法解决此错误。任何帮助都将受到高度赞赏。

1 个答案:

答案 0 :(得分:1)

谢谢大家。我解决了这个问题。 Django all-auth有一个带有标签account的应用程序,我有一个名为account的应用程序。当我将这两个应用程序放在我的INSTALLED_APPS设置中时,我会收到一个冲突的错误,该错误被django错误掩盖 - django.core.exceptions.AppRegistryNotReady。我是如何解决这个问题的:

我在项目应用中使用了自定义应用配置,如下所示,并添加了不同的应用标签,解决了这个问题:

class ConfigAccount(AppConfig):
    name = 'my_project.apps.account'
    label = 'my_account'
    verbose_name = 'account'

label属性确保名称不冲突。