如何检查 Django 数组字段是否有数据

hen*_*ich 3 django

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

id_list = ArrayField(models.CharField(max_length=10000), blank=True, null=True)
Run Code Online (Sandbox Code Playgroud)

我想编写一个查询来查找所有在 id_list 中有数据的文章对象。我尝试了以下方法,但没有奏效。

Article.objects.filter(id_list__isnull=False)
Run Code Online (Sandbox Code Playgroud)

写这个的正确方法是什么?谢谢你。

Iai*_*ton 6

您可以在数组长度大于 0 的地方使用len过滤器ArrayField和过滤器

Article.objects.filter(id_list__len__gt=0)
Run Code Online (Sandbox Code Playgroud)