Django使用详解:ORM 的反向查找(related_name)


Posted in Python onMay 30, 2018

先定义两个模型,一个是A,一个是B,是一对多的类型。

class A(models.Model):
  name= models.CharField('名称', max_length=32)

class B(models.Model):
  a= models.ForeignKey(A, verbose_name='A类',related_name = "test")
  name = models.CharField('称呼', max_length=16)

如果我们要查询一个A拥有哪些B的话,那我们要怎么做呢

通过主表来查询子表

A.objects.get(id=A_id).test.all().order_by('-created'),

django 默认每个主表的对象都有一个是外键的属性,可以通过它来查询到所有属于主表的子表的信息。这个属性的名称默认是以子表的名称小写加上_set()来表示(上面默认以b_set访问),默认返回的是一个querydict对象。

related_name 可以给这个外键定义好一个别的名称

通过子表来查询主表

B.objects.filter(a=A_id).order_by('-created')

以上这篇Django使用详解:ORM 的反向查找(related_name)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python对指定目录下文件进行批量重命名的方法
Apr 18 Python
python在windows下创建隐藏窗口子进程的方法
Jun 04 Python
Python实现数据库并行读取和写入实例
Jun 09 Python
OPENCV去除小连通区域,去除孔洞的实例讲解
Jun 21 Python
解决python3 安装完Pycurl在import pycurl时报错的问题
Oct 15 Python
python实现本地图片转存并重命名的示例代码
Oct 27 Python
Python使用修饰器进行异常日志记录操作示例
Mar 19 Python
Python面向对象程序设计类的多态用法详解
Apr 12 Python
利用python和百度地图API实现数据地图标注的方法
May 13 Python
python实现简单银行管理系统
Oct 25 Python
keras的三种模型实现与区别说明
Jul 03 Python
Python3接口性能测试实例代码
Jun 20 Python
Python实现决策树C4.5算法的示例
May 30 #Python
python实现决策树ID3算法的示例代码
May 30 #Python
浅谈Django中的数据库模型类-models.py(一对一的关系)
May 30 #Python
Python实现的读取电脑硬件信息功能示例
May 30 #Python
Python应用库大全总结
May 30 #Python
Django中反向生成models.py的实例讲解
May 30 #Python
Python RabbitMQ消息队列实现rpc
May 30 #Python
You might like
最省空间的计数器
2006/10/09 PHP
php 短链接算法收集与分析
2011/12/30 PHP
PHP入门之常量简介和系统常量
2014/05/12 PHP
PHP简单留言本功能实现代码
2017/06/09 PHP
超级强大的表单验证
2006/06/26 Javascript
一端时间轮换的广告
2006/06/26 Javascript
Javascript事件热键兼容ie|firefox
2010/12/30 Javascript
jquery动画2.元素坐标动画效果(创建一个图片走廊)
2012/08/24 Javascript
js中的preventDefault与stopPropagation详解
2014/01/29 Javascript
跟我学Nodejs(二)--- Node.js事件模块
2014/05/21 NodeJs
js实现在同一窗口浏览图片
2014/09/17 Javascript
javascript面向对象之对象的深入理解
2015/01/13 Javascript
javascript弹出窗口中增加确定取消按钮
2016/06/24 Javascript
react-native 完整实现登录功能的示例代码
2017/09/11 Javascript
详解vue中使用express+fetch获取本地json文件
2017/10/10 Javascript
JS处理数据四舍五入(tofixed与round的区别详解)
2017/10/26 Javascript
vue props传值失败 输出undefined的解决方法
2018/09/11 Javascript
解决vue 格式化银行卡(信用卡)每4位一个符号隔断的问题
2018/09/14 Javascript
viewer.js一个强大的基于jQuery的图像查看插件(支持旋转、缩放)
2020/04/01 jQuery
基于Python log 的正确打开方式
2018/04/28 Python
Python中pymysql 模块的使用详解
2019/08/12 Python
python Manager 之dict KeyError问题的解决
2019/12/21 Python
Python reduce函数作用及实例解析
2020/05/08 Python
阿迪达斯希腊官方网上商店:adidas希腊
2019/04/06 全球购物
什么叫做SQL注入,如何防止
2016/10/04 面试题
材料物理专业大学毕业生求职信
2013/10/15 职场文书
自我鉴定模板
2013/10/29 职场文书
教师实习自我鉴定
2013/12/14 职场文书
禁止酒驾标语
2014/06/25 职场文书
社会学专业求职信
2014/07/17 职场文书
三严三实对照检查材料
2014/08/25 职场文书
本溪关门山导游词
2015/02/09 职场文书
2015年医院创卫工作总结
2015/04/22 职场文书
2016大一新生入学教育心得体会
2016/01/23 职场文书
简短的人生哲理(38句)
2019/08/13 职场文书
Python中tkinter的用户登录管理的实现
2021/04/22 Python