我有一个用户的objectID列表
friends = ['someID', 'someID']
我编写了一个查询集来获取与朋友列表中的这些objectID相关联的用户。
u = UserAccount.objects.filter(Q(id = friends[0]) or Q(id = friends[1]))
现在u.to_json()
虽然对象ID都存在于数据库
所以我通过分离查询来检查它,现在每个查询集都按预期返回了一个UserAccount对象。
u = UserAccount.objects.filter(Q(id = friends[0]))
v = UserAccount.objects.filter(Q(id = friends[1]))
可能出现什么问题? “或”是否有问题?
答案 0 :(得分:2)
修正:
UserAccount.objects.filter(Q(id = friends[0]) | Q(id = friends[1]))
答案 1 :(得分:2)
要匹配列表中的任何内容,您可以使用in
query operator:
UserAccount.objects.filter(id__in=friends)