根据当前用户 django 模型 admin 过滤对象
Filter objects based on th current user django model admin
你好,我正在尝试根据 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)
产品外键仍然returns一切都没有过滤掉分支。如何完成过滤?
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)
我的问题是我将产品添加到自动完成字段,它返回了所有忽略过滤器的查询。
你好,我正在尝试根据 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)
产品外键仍然returns一切都没有过滤掉分支。如何完成过滤?
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)
我的问题是我将产品添加到自动完成字段,它返回了所有忽略过滤器的查询。