【问题标题】:Adding a model in Django Admin to the User/Group models?在 Django Admin 中将模型添加到用户/组模型?
【发布时间】:2015-07-10 12:33:30
【问题描述】:

Django 管理站点具有包含用户和组的身份验证和授权。当我们添加模型时,它们会显示在此下方。是否可以在组、用户下方立即添加模型?我们如何更改现有名称?

【问题讨论】:

    标签: django django-admin


    【解决方案1】:

    这有点棘手,需要一些工作,并且会在 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',
    ...
    

    【讨论】:

      【解决方案2】:

      尝试覆盖管理员index模板...

      将此{% for app in app_list %} 更改为{% for app in app_list reversed %} 或以某种自定义方式对其进行排序...


      编辑

      似乎我找到了更简单的解决方案:)

      https://github.com/mishbahr/django-modeladmin-reorder

      【讨论】:

        猜你喜欢
        • 2016-04-17
        • 2020-09-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-11-14
        • 2020-09-26
        • 2019-05-30
        • 1970-01-01
        相关资源
        最近更新 更多