如何检查Django的ArrayField是否有数据?

11

我有一个用于文章的Django模型,其中包含一个数组字段,有时会有id。

id_list = ArrayField(models.CharField(max_length=10000), blank=True, null=True)

我想写一个查询,找出所有在id_list中有数据的文章对象。我尝试了下面的方法,但没有成功。

Article.objects.filter(id_list__isnull=False)

怎样才是正确的写法?谢谢。


你可以使用len函数。 - DARK_C0D3R
1个回答

20
你可以在 ArrayField 上使用 len 过滤器,并过滤数组长度大于 0 的内容。
Article.objects.filter(id_list__len__gt=0)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接