我想创建一个过滤器,以便我可以看到(反向外键??字段是否为空)。
例如:
班级订单:
Class OrderLineItem:
在订单的列表视图页面上,我希望能够根据订单的订单项是否包含embroidery_name来过滤订单...
答案 0 :(得分:0)
最好通过在评论中实施SimpleListFilter
作为Parth Modi提及,然后在list_filter
类中指定OrderAdmin
属性来实现。
例如:
class EmptyEmbroideryNameFilter(admin.SimpleListFilter):
title = 'Embroidery Name'
parameter_name = 'embroideryname'
def lookups(self, request, model_admin):
return [('not_set', 'Not set')]
def queryset(self, request, queryset):
if self.value() == 'not_set':
return queryset.filter(
orderlineitem__embroidery_name__isnull=True
)
然后在你的OrderAdmin
课程中:
class OrderAdmin(admin.ModelAdmin):
list_filter = (EmptyEmbroideryNameFilter, )
然后,您应该会在管理页面的右侧显示一个侧边栏,您可以在其中过滤Order
s而没有OrderLineItem
的{{1}}。