【问题标题】:Django administration panel filter listDjango 管理面板过滤器列表
【发布时间】:2015-06-19 12:04:52
【问题描述】:

我有我的 django 模型:发布

任何帖子都有作者(用户|管理员)

我想在我的 Django 管理面板中添加帖子的管理,但我想在帖子列表中只显示 author=Admin 的帖子。

这可能吗?

【问题讨论】:

    标签: django django-forms django-admin django-filter


    【解决方案1】:

    一般来说,我会说最好为此创建一个自定义视图(在网站的公共部分)。但如果您更喜欢使用 admin,那么您可以尝试 get_queryset 方法。例如,如果您想向管理员显示所有帖子,并为简单用户显示他们自己的帖子,这将是这样的(从上面的官方文档链接复制):

    class PostAdmin(admin.ModelAdmin):
        def get_queryset(self, request):
            qs = super(PostAdmin, self).get_queryset(request)
            if request.user.is_superuser:
                return qs
            return qs.filter(author=request.user)
    

    【讨论】:

      猜你喜欢
      • 2011-01-23
      • 2016-12-20
      • 2016-02-15
      • 2015-04-16
      • 1970-01-01
      • 2013-07-26
      • 2020-09-15
      • 2011-04-08
      • 2013-09-16
      相关资源
      最近更新 更多