本文整理汇总了Python中django.contrib.auth.admin.UserAdmin.fieldsets方法的典型用法代码示例。如果您正苦于以下问题:Python UserAdmin.fieldsets方法的具体用法?Python UserAdmin.fieldsets怎么用?Python UserAdmin.fieldsets使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类django.contrib.auth.admin.UserAdmin
的用法示例。
在下文中一共展示了UserAdmin.fieldsets方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: __init__
# 需要导入模块: from django.contrib.auth.admin import UserAdmin [as 别名]
# 或者: from django.contrib.auth.admin.UserAdmin import fieldsets [as 别名]
def __init__(self, *args, **kwargs):
"""
Override to populate fieldsets.
"""
super(UserAdmin, self).__init__(*args, **kwargs)
fields = list(Admin.fieldsets[1][1]["fields"])
for field in copy(User.FIELDS):
fields.append(field)
Admin.fieldsets[1][1]["fields"] = fields
示例2: change_view
# 需要导入模块: from django.contrib.auth.admin import UserAdmin [as 别名]
# 或者: from django.contrib.auth.admin.UserAdmin import fieldsets [as 别名]
def change_view(self, request, *args, **kwargs):
# Two users to take into account, current and target.
target = User.objects.get(pk=args[0])
current = request.user
# No restrictions for superusers
if current.is_superuser:
return super(RestrictiveUserAdmin, self).change_view(request, *args, **kwargs)
# No modifications to superusers
elif target.is_superuser:
try:
# All fields are made read-only
self.readonly_fields = []
for fs in self.fieldsets:
self.readonly_fields += list(fs[1]['fields'])
response = super(RestrictiveUserAdmin, self).change_view(request, *args, **kwargs)
finally:
# Reset read-only fields
self.readonly_fields = UserAdmin.readonly_fields
return response
# Restrictions for normal users
else:
try:
self.fieldsets = self.restricted_fieldsets
response = super(RestrictiveUserAdmin, self).change_view(request, *args, **kwargs)
finally:
# Reset fields
self.fieldsets = UserAdmin.fieldsets
return response