4

私はいくつかの列を含むモデルを持っています:A、B、C. ロガーがスーパーユーザーの場合、list_display にはすべての列 (A、B、C) が含まれます。 B と C.関連する回答のほとんどはユーザー get_form(...) ですが、これは「exclude」、「fields」、および「fieldsets」を変更することです。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 に答える