Django 管理界面:根据当前用户显示字段

问题描述 投票:0回答:1

是否可以在管理界面中显示与当前用户相关的对象? 例如:

class Feedback(models.Model):
    to = models.ForeignKey(User)
    message = models.CharField(max_length=200)

我有多个管理员,我想向相关管理员显示消息。谢谢!

django admin
1个回答
4
投票

您可以通过在应用程序目录中放置名为

admin.py
的文件、为模型编写
ModelAdmin
类并覆盖其 queryset 方法来自定义管理站点,如下所示:

class FeedbackModelAdmin(admin.ModelAdmin):
    fields = ('message',)

    def queryset(self, request):
        qs = super(FeedbackModelAdmin, self).queryset(request)
        return qs.filter(to=request.user)

查看 Django 管理站点的完整 文档

© www.soinside.com 2019 - 2024. All rights reserved.