【问题标题】:customize user modification form django admin site自定义用户修改表单 django 管理站点
【发布时间】:2020-07-03 00:56:28
【问题描述】:

当你从 django 管理站点创建/修改用户时,你有这个界面:

我的项目很简单,因为我没有组,并且每个员工用户都可以拥有超级用户状态。这就是为什么我不想显示超级用户状态选项,也不想显示组和用户权限。如何屏蔽此表单的这一部分并断言所有员工用户也是超级用户。

这个表单在这里生成:django/contrib/admin/templates/admin/change_form.html

尤其是在这一行:

{% block field_sets %}
{% for fieldset in adminform %}
  {% include "admin/includes/fieldset.html" %}
{% endfor %}
{% endblock %}

所以我需要修改 adminform 变量但不知道怎么做。

任何帮助将不胜感激。

提前致谢!

【问题讨论】:

    标签: django django-admin django-users


    【解决方案1】:

    这是怎么做的。在您的 admin.py 文件中,使用您想要的字段集定义一个新的用户管理员:

    from django.contrib import admin
    from django.utils.translation import gettext, gettext_lazy as _
    
    # Register your models here.
    from django.contrib.auth.admin import UserAdmin
    from django.contrib.auth.models import User, Group
    
    # Define a new User admin
    class UserAdmin(UserAdmin):
        fieldsets = (
            (None, {'fields': ('username', 'password')}),
            (_('Personal info'), {'fields': ('first_name', 'last_name', 'email')}),
            (_('Permissions'), {
                'fields': ('is_active', 'is_staff', 'is_superuser'),
            }),
            (_('Important dates'), {'fields': ('last_login', 'date_joined')}),
        )
    
    
    # Re-register UserAdmin
    admin.site.unregister(User)
    admin.site.register(User, UserAdmin)
    
    # don't show groups
    admin.site.unregister(Group)
    

    【讨论】:

      【解决方案2】:

      我认为您需要修改该模板。所以你看看

      django/contrib/admin/templates/admin/auth/user/

      这应该包含几个用于修改用户的模板。

      您可以通过将它们复制到 TEMPLATE_DIR/admin/auth 然后更改它们来覆盖它们。

      另外,看@django/contrib/admin/templates/admin/change_form.html

      这是您要复制和更改的文件(到 TEMPLATE_DIR/admin/auth/user/)以覆盖该模型的更改表单。

      【讨论】:

      • 感谢您的帮助。我在您的帮助下编辑了我的问题,但更改 html 不是解决方案,因为您只能显示或隐藏有关用户的所有内容。
      猜你喜欢
      • 1970-01-01
      • 2019-08-18
      • 2016-11-18
      • 2018-12-16
      • 1970-01-01
      • 2019-08-07
      • 2011-11-28
      • 2020-03-04
      • 2021-06-07
      相关资源
      最近更新 更多