Django检查数据库字段数组中是否存在整数

时间:2017-02-21 22:02:59

标签: arrays json django orm model

我有一个数据库,其字段是“伪”array。此array包含整数值。我的实现如下:

attendees = models.TextField(null=True) # declaring the integer array

当我说伪时,我的意思是我使用json将其变成数组。

attendees=json.dumps(members)

现在attendees列将包含类似["1", "2", "3"]

的内容

所以我想检查与会者是否会包含值“1”。基本上,我想要这样的东西:

eventList = Events.objects.all().filter(user_id in Event.attendees) # I know this isn't the correct syntax

有关如何尽可能高效地完成此任务的任何想法?

1 个答案:

答案 0 :(得分:0)

您需要使用__contains

 .filter(attendees__contains='"{}"'.format(user_id))

虽然问题仍然是为什么这不是一个单独的模型或JSONField / ArrayField ...