根据权限管理django管理过滤器

时间:2015-04-29 07:37:02

标签: python django filter permissions

我正在创建一个python django项目,而在管理员中我希望它的功能如下:

用户打开customer窗口,该窗口会显示所有customers的列表,如果用户有某个permission,则可以看到位置过滤器,但如果没有{{1}然后过滤器不可见。

这是可能的,如果是,那么如何?

1 个答案:

答案 0 :(得分:1)

您可以覆盖ModelAdmin的{​​{3}}方法并检查其中的权限。

示例:

MyAdmin(admin.ModelAdmin):
    def get_list_filter(self, request):
        if request.user.has_perm('some_perm'):
            return ['filter_1', 'filter_2', ......]
        else:
            return []