如何从数组列表字段中过滤 Integerlist
How to filter Integerlist from a Array list field
我正在使用 Django Admin (list_filter) 从数组列表字段中过滤整数列表,我没有得到任何结果查询。
model.py
class Offer(CreatedAndUpdatedMixin):
stores = ArrayField(models.IntegerField(),default=list(),
null=True, blank=True)
下面是我在 filter.py
中的自定义查找代码
def queryset(self, request, queryset):
if self.value() == 'Bangalore':
stores = Store.objects.filter(city__id=1).values_list('id', flat=True)
return queryset.filter(stores__contains=list(stores))
return queryset
我没有收到任何错误,但 returns 为空
您可以将 contains
更改为 overlap
。正如 documentation 提到的,overlap
用于查找与给定数组匹配的记录。
我正在使用 Django Admin (list_filter) 从数组列表字段中过滤整数列表,我没有得到任何结果查询。
model.py
class Offer(CreatedAndUpdatedMixin):
stores = ArrayField(models.IntegerField(),default=list(),
null=True, blank=True)
下面是我在 filter.py
def queryset(self, request, queryset):
if self.value() == 'Bangalore':
stores = Store.objects.filter(city__id=1).values_list('id', flat=True)
return queryset.filter(stores__contains=list(stores))
return queryset
我没有收到任何错误,但 returns 为空
您可以将 contains
更改为 overlap
。正如 documentation 提到的,overlap
用于查找与给定数组匹配的记录。