Django ORM:按对象列表过滤
Posted
技术标签:
【中文标题】Django ORM:按对象列表过滤【英文标题】:Django ORM: filter by a list of objects 【发布时间】:2010-11-04 22:39:20 【问题描述】:我有以下代码将我的所有用户从多选字段放入列表中
USERS = []
for user in User.objects.filter(groups__name='accountexec'):
USERS.append((user.id,user))
我需要使用 Log.objects.filter() 将所有带有 user= 的日志发送给 USERS 列表中的用户
【问题讨论】:
【参考方案1】:使用__in
查找:
Log.objects.filter(user__in=User.objects.filter(groups__name='accountexec'))
【讨论】:
其实就是“Log.objects.filter(user__in=User.objects.filter(groups__name='accountexec'))”。 Django 会将其变成单个查询 + 子查询。 冒昧根据詹姆斯的建议改进了建议的查询,希望没问题。以上是关于Django ORM:按对象列表过滤的主要内容,如果未能解决你的问题,请参考以下文章