【发布时间】:2016-01-11 18:26:22
【问题描述】:
假设我有两个表:all_my_friends_ids 和 my_facebook_friends_ids,它们代表我在数据库中的两个朋友列表:
all_my_friends_ids = self.user.follows.values_list('pk', flat=True)
(例如 all_my_friends_ids = [1, 4, 9, 16, 18, 20, 24, 70])
my_facebook_friends_ids = User.objects.filter(facebook_uid__in=my_facebook_friends_uids)
(例如 my_facebook_friends_ids = [4, 16, 28, 44, 39])
我想检查 my_facebook_friends_ids 列表中的所有元素是否在 all_my_friends_ids 中都有条目,如果没有 - 返回不在 all_my_friends_ids 列表中的 id 元素(稍后将它们添加到 all_my_friends_ids 中)。
如何在 Django ORM 中使用 QuerySet 解决这个任务?我尝试提取 id 并将此函数应用于它们:
def sublistExists(list1, list2):
return ''.join(map(str, list2)) in ''.join(map(str, list1))
但这似乎不是正确的方法,尤其是对我而言。
【问题讨论】:
标签: python django django-models django-orm