Django 显示不同的列表\u显示取决于用户

Django 显示不同的列表\u显示取决于用户,django,django-admin,Django,Django Admin,我有一个模型包括一些列:a、B、C。当记录器是超级用户时,列表显示将包括所有列(a、B、C),否则,其他用户只能看到部分列,例如:B和C。大多数相关答案是用户获取形式(…),但这是对“排除”、“字段”和“字段集”的更改,我想更改列表显示。您可以使用changelist\u视图方法编辑列表显示: class MyModelAdmin(admin.ModelAdmin): list_display = ('A', 'B', 'C',) def changelist_view(sel

我有一个模型包括一些列:a、B、C。当记录器是超级用户时,列表显示将包括所有列(a、B、C),否则,其他用户只能看到部分列,例如:B和C。大多数相关答案是用户获取形式(…),但这是对“排除”、“字段”和“字段集”的更改,我想更改列表显示。

您可以使用
changelist\u视图
方法编辑
列表显示

class MyModelAdmin(admin.ModelAdmin):
    list_display = ('A', 'B', 'C',)

    def changelist_view(self, request, extra_context=None):
        if not request.user.is_superuser:
            self.list_display = ('B', 'C',)
        return super(MyModelAdmin, self).changelist_view(request, extra_context)

你的问题需要更清楚一些吗?听起来您可能想覆盖
AdminModel
的视图,以便根据当前用户权限有条件地将字段添加到
列表中。我遇到的另一个问题的链接,希望你能解决。