4

我有一个模型包括一些列:A,B,C。当记录器是超级用户时,list_display 将包括所有列(A,B,C),否则,其他用户只能看到部分列,例如: B 和 C. 大多数相关答案是用户 get_form(...),但这是更改“排除”、“字段”和“字段集”,我想更改 list_dispaly。

4

1 回答 1

12

您将使用该changelist_view方法进行编辑list_display

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)
于 2013-09-27T09:13:20.833 回答