Django 1.9和django.contrib.auth

Lor*_*eña 1 django django-models django-settings

我没有django.contrib.authINSTALLED_APPS,我不想因为我使用一个自定义的用户模型做出来,我不需要没有内置的User,GroupPermission模型.

我希望这可以在Django 1.9中使用,因为文档在https://docs.djangoproject.com/en/1.9/releases/1.9/中django.contrib.auth条款中说明:

AbstractBaseUserBaseUserManager被转移到一个新的django.contrib.auth.base_user模块,使它们可以在不包括进口django.contrib.authINSTALLED_APPS(这样做成长于旧版本弃用警告,并在Django 1.9不再支持).

但是,截至目前,我无法在django.contrib.auth不引发错误的情况下导入任何内容.不能导入中间件或表单.我必须要么添加django.contrib.authINSTALLED_APPS或者不使用该模块的任何东西.

每当django.contrib.auth间接导入模型时,我都会得到以下经典错误:whatever_model_was_indirectly_imported不声明显式app_label而且不在应用程序中INSTALLED_APPS.

编辑:包括回溯的最后部分:

...
  File "/usr/lib/python2.7/site-packages/django/contrib/auth/middleware.py", line 3, in <module>
    from django.contrib.auth.backends import RemoteUserBackend
  File "/usr/lib/python2.7/site-packages/django/contrib/auth/backends.py", line 4, in <module>
    from django.contrib.auth.models import Permission
  File "/usr/lib/python2.7/site-packages/django/contrib/auth/models.py", line 38, in <module>
    class Permission(models.Model):
  File "/usr/lib/python2.7/site-packages/django/db/models/base.py", line 102, in __new__
    "INSTALLED_APPS." % (module, name)
RuntimeError: Model class django.contrib.auth.models.Permission doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.
Run Code Online (Sandbox Code Playgroud)

任何解决方法?

Lor*_*eña 6

它看起来像唯一的解决方法是目前被包括django.contrib.authINSTALLED_APPS和忽略数据库中的三个表.

  • 这并不好。感谢您坚持下去。 (2认同)