使用 contains 查询 ArrayField 的成员资格

此查询返回所有锥形巧克力勺和香草勺。

VANILLA, CHOCOLATE, MINT, STRAWBERRY = 1, 2, 3, 4  # constants for flavors
choco_vanilla_cones = IceCream.objects.filter(scoops__contains=[CHOCOLATE, VANILLA])

不要忘记从 models.py 文件导入 IceCream 模型。

还要记住,django 不会为 ArrayFields 创建索引。如果要搜索它们,则需要索引,并且需要在迁移文件中调用 RunSQL 来手动创建索引。