【问题标题】:Filter objects based on th current user django model admin根据当前用户 django model admin 过滤对象
【发布时间】:2020-07-09 02:15:36
【问题描述】:

您好,我正在尝试根据Profile 模型中的字段过滤模型内联管理中的对象,我使用 OneToOneField 创建,User 配置文件模型有一个字段分支 所以我想根据登录用户的分支过滤对象

class ProductDetailInlineAdmin(admin.StackedInline):
    readonly_fields = ('created_date', 'generated_url')
    model = ProductDetail
    extra = 1

    def formfield_for_foreignkey(self, db_field, request, **kwargs):
        if db_field.name == "product":
            kwargs["queryset"] = ProductDetail.objects.filter(
                product=request.user.profile.branch_id)
        return super().formfield_for_foreignkey(db_field, request, **kwargs)

产品外键仍然返回所有内容而不过滤掉分支。如何完成过滤?

【问题讨论】:

  • 你能把代码的其他部分也贴出来

标签: python django django-admin


【解决方案1】:
def formfield_for_foreignkey(self, db_field, request, **kwargs): if db_field.name == "product": kwargs["queryset"] = ProductDetail.objects.filter( product=request.user.profile.branch_id) return super().formfield_for_foreignkey(db_field, request, **kwargs)

我的问题是我将产品添加到自动完成字段并返回所有查询忽略过滤器。

【讨论】:

    猜你喜欢
    • 2016-05-27
    • 1970-01-01
    • 1970-01-01
    • 2012-08-08
    • 1970-01-01
    • 2021-04-02
    • 2016-05-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多