将 Django Admin 中的模型添加到 User/Group 模型?
Adding a model in Django Admin to the User/Group models?
Django 管理站点具有包含用户和组的身份验证和授权。当我们添加模型时,它们会显示在这个下面。是否可以在组、用户的正下方添加模型?我们如何更改现有名称?
尝试覆盖管理 index
模板 ...
将此 {% for app in app_list %}
更改为 {% for app in app_list reversed %}
或以某种自定义方式对其进行排序 ...
编辑
看来我找到了更简单的解决方案:)
这有点棘手,需要一些工作,并且会在 Django 1.8 中触发一些警告。但这基本上就是你所做的:
假设您有一个应用程序 myauth
将覆盖默认的 django.contrib.auth
应用程序...
在 myauth/models.py
中执行此操作:
from django.db import models
from django.contrib.auth.models import User, Group
class ExtraModel(models.Model):
...
ExtraModel
是您要添加的型号。
在 myauth/__init__.py
中执行此操作:
from django.apps import AppConfig
class OverrideAuthConfig(AppConfig):
name = 'auth'
verbose_name = "New User and Authentication"
default_app_config = 'auth.OverrideAuthConfig'
在 myauth/admin.py
中执行此操作:
from django.contrib import admin
from .models import User, Group, ExtraModel
admin.site.register(User)
admin.site.register(Group)
admin.site.register(ExtraModel)
然后在您的 settings.py
中,在 INSTALLED_APPS
中注释掉以下行:
...
#'django.contrib.auth',
...
然后只需添加您的应用程序:
...
'myauth',
...
Django 管理站点具有包含用户和组的身份验证和授权。当我们添加模型时,它们会显示在这个下面。是否可以在组、用户的正下方添加模型?我们如何更改现有名称?
尝试覆盖管理 index
模板 ...
将此 {% for app in app_list %}
更改为 {% for app in app_list reversed %}
或以某种自定义方式对其进行排序 ...
编辑
看来我找到了更简单的解决方案:)
这有点棘手,需要一些工作,并且会在 Django 1.8 中触发一些警告。但这基本上就是你所做的:
假设您有一个应用程序 myauth
将覆盖默认的 django.contrib.auth
应用程序...
在 myauth/models.py
中执行此操作:
from django.db import models
from django.contrib.auth.models import User, Group
class ExtraModel(models.Model):
...
ExtraModel
是您要添加的型号。
在 myauth/__init__.py
中执行此操作:
from django.apps import AppConfig
class OverrideAuthConfig(AppConfig):
name = 'auth'
verbose_name = "New User and Authentication"
default_app_config = 'auth.OverrideAuthConfig'
在 myauth/admin.py
中执行此操作:
from django.contrib import admin
from .models import User, Group, ExtraModel
admin.site.register(User)
admin.site.register(Group)
admin.site.register(ExtraModel)
然后在您的 settings.py
中,在 INSTALLED_APPS
中注释掉以下行:
...
#'django.contrib.auth',
...
然后只需添加您的应用程序:
...
'myauth',
...