从Django-admin中删除默认的应用程序

默认情况下,在Django-admin中有Users,Groups和Sites应用程序。 我如何删除群组和网站?

我试图从根URL删除admin.autodiscover() 。 然后,当我在应用模型的某个地方添加了像admin.site.register(User, UserAdmin)这样的东西时admin.site.register(User, UserAdmin)我得到了一个AlreadyRegisteredexception(这是相当正确的 – 模型用户已经在django.contrib.auth中注册了)。

在一个admin.py你知道一定会被加载,请尝试:

 admin.site.unregister(User) admin.site.unregister(Group) admin.site.unregister(Site) 

除了上面的内容,请仔细检查您在“settings.py”中的“INSTALLED_APPS”

 INSTALLED_APPS = [ # django apps first 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', # custom apps below 'my_app' ] 

否则会导致错误。 看到这里: 问题Djangopipe理员注册一个内联用户configuration文件pipe理员

要摆脱用户和组,我必须在admin.py中执行:

 from django.contrib import admin # Need to import this since auth models get registered on import. import django.contrib.auth.admin import django.contrib.auth.models from django.contrib import auth admin.site.unregister(auth.models.User) admin.site.unregister(auth.models.Group)