M. *_*yan 1 python django orm django-orm
我正在开发一个目前有很多ManyToMany关系的应用程序(并且最终会有更多关系),我正在尝试用巧妙的方法(阅读:正确的方法)来准确地查询ORM以获取JOINed数据.
以下是我所拥有的以及我需要做的事情的样本.我为伪代码道歉.
ProjectModel:
owner = ForeignKey(User) #just one user
people = ManyToMany(User) #multiple users and theoretically can also contain the owner
Run Code Online (Sandbox Code Playgroud)
现在我要查询的是每个用户的列表,这些用户是当前用户拥有的项目中的"人员".
我没有真正的线索如何做到这一点.__contains似乎并不适合这个...所以我认为我的选择基本上只是查询每个项目并自己进行迭代.但如果我知道如何通过ORM/SQL获得它,那将会更加丰富.
谢谢!
# users in projects owned by request.user
users = User.objects.filter(projectmodel__owner=request.user).distinct()
Run Code Online (Sandbox Code Playgroud)
如果有很多m2ms,并且你已经related_name在你的people字段中定义了a ,那么你将在反向查找中使用它而不是projectmodel.
| 归档时间: |
|
| 查看次数: |
464 次 |
| 最近记录: |