如果我有一个通过某些查询获取的对象列表(在本例中为 Django 模型)。
friends = Friend.objects.friends(user1)
如何获取 id 列表,以便我可以使用它来搜索另一个模型,如下所示:
items = Item.objects.get(pk__in=friends_ids).order_by('date')
我很确定 lambda 表达式应该能够做到这一点,但我无法弄清楚......
如果返回值是friends
方法是一个QuerySet https://docs.djangoproject.com/en/3.1/ref/models/querysets/#django.db.models.query.QuerySet对象,您可以使用QuerySet.values_list https://docs.djangoproject.com/en/3.1/ref/models/querysets/#values-list method:
friends_ids = friends.values_list('id', flat=True)
如果它不是一个QuerySet
对象,您可以使用列表理解 https://docs.python.org/3/tutorial/datastructures.html#list-comprehensions(这个可以同时用于QuerySet
和非查询集一):
friends_ids = [friend.id for friend in friends]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)