【发布时间】:2015-07-10 12:33:30
【问题描述】:
Django 管理站点具有包含用户和组的身份验证和授权。当我们添加模型时,它们会显示在此下方。是否可以在组、用户下方立即添加模型?我们如何更改现有名称?
【问题讨论】:
标签: django django-admin
Django 管理站点具有包含用户和组的身份验证和授权。当我们添加模型时,它们会显示在此下方。是否可以在组、用户下方立即添加模型?我们如何更改现有名称?
【问题讨论】:
标签: django django-admin
这有点棘手,需要一些工作,并且会在 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',
...
【讨论】:
尝试覆盖管理员index模板...
将此{% for app in app_list %} 更改为{% for app in app_list reversed %} 或以某种自定义方式对其进行排序...
似乎我找到了更简单的解决方案:)
【讨论】: