我有几个模型,并希望返回属于用户的所有模型的查询集,我想知道是否有可能从多个模型返回一个QuerySet?跨模型的Django Queryset?
8
A
回答
8
我假设你的意思是你想从每个模型中返回属于该用户的所有对象的单个查询集。
你需要一个查询集还是只是一个迭代? AFAIK,异构qs是不可能的。然而,你可以轻松地返回一个列表,一个链式迭代器(itertools)或一个生成器来做你想做的事情。这假设提前知道引用用户的模型。假设默认related_name,相关查询集的属性可以从用户实例通过模型的名称访问:
qs = getattr(user, '%s_set' % model_name.lower());
当然,使用任何异构列表,你要么只能使用领域或会在所有这些模型中定义的方法,否则你将不得不确定每个对象的类型来执行任何类型特定的操作。
3
您的模型必须包含关系字段(ForeigKey和ManyToManyField),并设置related_name关键字参数。检查文档here。
相关问题
- 1. Django 2模型1“queryset”
- 2. DJANGO - Queryset和模型设计
- 3. Django的模型 - queryset的问题
- 4. 两个模型的Django queryset过滤器
- 5. 在模型上执行Django查询,但结束与该模型的ManyToManyField QuerySet
- 6. Django:根据最新的子模型字段排序QuerySet
- 7. Django Queryset比较两个不同的模型与多行
- 8. Queryset在继承的Django模板中
- 9. 使用Django的QuerySet
- 10. 跨应用程序使用django模型?
- 11. django - queryset in modelForm
- 12. Django复杂queryset
- 13. Django QuerySet问题
- 14. django queryset与mongodb
- 15. Django模型 - 使用QuerySet在M2M场景中自动加入FK
- 16. 如何在QuerySet中收集一堆Django抽象模型?
- 17. 从Django queryset json输出剥离模型pk和字段文本
- 18. 在模板中传递QuerySet对象。 Django
- 19. 的Django模型继承,过滤模型
- 20. django queryset datetime values substraction
- 21. 解析Django Queryset JSON
- 22. queryset Django?小问题
- 23. 什么是django QuerySet?
- 24. Django表单queryset doudt
- 25. Django的辨儿童的QuerySet
- 26. Django模板中的不同模型
- 27. 来自queryset的django send_mail
- 28. 如何在Django的QuerySet
- 29. Django的 - 注释一个QuerySet
- 30. update()调用后的Django queryset?
Duplicate:http://stackoverflow.com/questions/313137/using-django-how-can-i-combine-two-queries-from-separate-models-into-one-query – 2008-12-10 21:32:08