繁体   English   中英

Django过滤许多结果

[英]Django filter manytomany results

假设我的模型中有一个多对多关系字段,如果实体中的字段等效于MAMMAL,我想做的就是获取所有相关实体。 我目前正在以列表理解的方式进行此操作,但想知道django模型是否提供了更优雅的解决方案。

[related_entity for related_entity in related_entity.related_entities.all() if
                                  related_entity.entity_type.entity_type_label == 'MAMMAL']

根据Django文档( https://docs.djangoproject.com/en/1.9/topics/db/examples/many_to_many/ ),您可以使用:

entity.objects.filter(related_entity__entity_type__entity_type_label =='MAMMAL')

与标准Model.objects()一样,“多对多”字段为您提供了一个经理,您可以使用完全相同的方式对其进行过滤:

related_entity.filter(entity_type__entity_type_label="MAMMAL")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM