码迷,mamicode.com
首页 > 其他好文 > 详细

Django跨关联关系查询

时间:2021-06-24 17:34:47      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:obj   one   模型   条件查询   too   根据   field   多对多   注意   

正向查询:

多表查一表;

反向查询:

一表查多表

 

关联查询

多对多和一对多

正向查询:

one1 = 一类名.objects.get()

many_data = one1.多类名小写.all()

反向查询:

many1 = 多类名.objects.get()

one_data = many1.一类名小写_set.all()

一对一:以下多类名代指存放OneToOneField的类

正向查询:

one1 = 一类名.objects.get()

many_data = one1.多类名小写

反向查询:

many1 = 多类名.objects.get()

one_data = many1.一类名小写

 

注意: 1、查询哪个表中的数据,就通过哪个模型类来查询。  2、通过关联属性的条件查询时,如果关联属性定义在该模型类中就直接使用关联属性,否则使用关联的模型类名小写。

通过多类的查询一类的数据:
    一类名.objects.filter(多类名小写__多类属性名)   # 关联属性没有定义在该类中,所以用多类名小写
通过一类的查询多类的数据:
    多类名.objects.filter(关联属性__一类属性名)     # 关联属性定义在该类中,所以直接用关联属性名

根据关联属性的条件查询

通过多类的条件查询一类的数据:
    一类名.objects.filter(多类名小写__多类属性名__条件名)   # 关联属性没有定义在该类中,所以用多类名小写
通过一类的条件查询多类的数据:
    多类名.objects.filter(关联属性__一类属性名__条件名)   # 关联属性定义在该类中,所以直接用关联属性名

 

Django跨关联关系查询

标签:obj   one   模型   条件查询   too   根据   field   多对多   注意   

原文地址:https://www.cnblogs.com/guo126/p/14924008.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!