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切换hosts文件代码示例
Dec 31 Python
使用Python中PDB模块中的命令来调试Python代码的教程
Mar 30 Python
Python 判断 有向图 是否有环的实例讲解
Feb 01 Python
Pycharm 操作Django Model的简单运用方法
May 23 Python
python+pandas+时间、日期以及时间序列处理方法
Jul 10 Python
Python使用itchat模块实现简单的微信控制电脑功能示例
Aug 26 Python
关于Python3 lambda函数的深入浅出
Nov 27 Python
Python3打包exe代码2种方法实例解析
Feb 17 Python
Python flask框架如何显示图像到web页面
Jun 03 Python
Django项目如何获得SSL证书与配置HTTPS
Apr 30 Python
pandas中关于apply+lambda的应用
Feb 28 Python
python字符串的一些常见实用操作
Apr 06 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
PHP n个不重复的随机数生成代码
2009/06/23 PHP
php获取文件大小的方法
2014/02/26 PHP
php微信支付接口开发程序
2016/08/02 PHP
PHP实现验证码校验功能
2017/11/16 PHP
细品javascript 寻址,闭包,对象模型和相关问题
2009/04/27 Javascript
JavaScript 加号(+)运算符号
2009/12/06 Javascript
jquery星级插件、支持页面中多次使用
2012/03/25 Javascript
JavaScript避免内存泄露及内存管理技巧
2014/09/05 Javascript
node.js中的buffer.fill方法使用说明
2014/12/14 Javascript
JavaScript的设计模式经典之代理模式
2016/02/24 Javascript
利用jquery实现实时更新歌词的方法
2017/01/06 Javascript
利用 spin.js 生成等待效果(js 等待效果)
2017/06/25 Javascript
JS脚本实现网页自动秒杀点击
2018/01/11 Javascript
Vue 实例中使用$refs的注意事项
2021/01/29 Vue.js
[00:17]DOTA2荣耀之路5:It’s a disastah!
2018/05/28 DOTA
使用基于Python的Tornado框架的HTTP客户端的教程
2015/04/24 Python
python3实现读取chrome浏览器cookie
2016/06/19 Python
Python DataFrame设置/更改列表字段/元素类型的方法
2018/06/09 Python
python 获取图片分辨率的方法
2019/01/08 Python
Python中new方法的详解
2019/01/15 Python
Python-ElasticSearch搜索查询的讲解
2019/02/25 Python
python实现AES加密和解密
2019/03/27 Python
Django的models中on_delete参数详解
2019/07/16 Python
python打印直角三角形与等腰三角形实例代码
2019/10/20 Python
python装饰器代替set get方法实例
2019/12/19 Python
3个CCIE对一个工程师的面试题
2012/05/06 面试题
如何查找网页漏洞
2016/06/22 面试题
会计工作决心书
2014/03/11 职场文书
挂牌仪式主持词
2014/03/20 职场文书
春节联欢会策划方案
2014/05/16 职场文书
社区服务标语
2014/07/01 职场文书
维护民族团结演讲稿
2014/08/27 职场文书
党组织领导班子整改方案
2014/10/25 职场文书
茶楼服务员岗位职责
2015/02/09 职场文书
植物园观后感
2015/06/11 职场文书
python之np.argmax()及对axis=0或者1的理解
2021/06/02 Python