今天小编就为大家分享一篇Django实现一对多表模型的跨表查询方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

当有两个表,例如一个学生表,一个班级表,是多对一的关系。

方法1:

c = models.Class.object.get(pk=1)
#查询到ID为1的班级
stus = models.Student.object.filter(cls=c)
# 查询出来所有班级为c的学生
#stus是多个对象
#可以循环出结果
for stu in stus :
 print stu.id,stu.name

方法2

stus = models.Student.object.filter(cls__name='1703')
#双下划线为跨表查询,查询学生对应的所有cls为1703的学生

方法3

c=models.Class.object.get(pk=1)
#获取ID为1的班级
stus=c.Student_set.all
#获取所有该班级下的所有学生

html页面获取方法

<td>{{ line.student_set.count }}</td>

以上这篇Django实现一对多表模型的跨表查询方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持爱安网。

最新资讯
又一个被新冠病毒“勾结”的蛋白

又一个被新冠病毒“勾

国际研究团队发现了新冠病毒进入人体细胞的另一种方式
华为麒麟9000芯片为何要一分为二?

华为麒麟9000芯片为何

新机发布会中,最让人感兴趣的莫过于大幅升级的相机系统
反直觉!新方法或让AI模型拥有"联想"力,甚至能识别从未见过的事物

反直觉!新方法或让AI

一种新的方法正在让人工智能模型获得人类的 “联想”
代码老矣,尚能跑否?

代码老矣,尚能跑否?

研究人员如何基于原始论文和自行编写的开源代码来复现
够硬!这虫子汽车都压不死

够硬!这虫子汽车都压不

虫子到底能有多硬?《自然》的新研究展示了一种超抗压的
14岁中学生找到有望治疗新冠的药物,获得北美科研竞赛大奖

14岁中学生找到有望治

1918年美国堪萨斯州莱利堡的临时医院。图片来源:Associ
最新文章
在pycharm中为项目导入anacodna环境的操作方法

在pycharm中为项目导

这篇文章主要介绍了在pycharm中为项目导入anacodna环
tensorflow的ckpt及pb模型持久化方式及转化详解

tensorflow的ckpt及pb

今天小编就为大家分享一篇tensorflow的ckpt及pb模型持
PyTorch笔记之scatter()函数的使用

PyTorch笔记之scatter

这篇文章主要介绍了PyTorch笔记之scatter()函数的使用
python3实现网页版raspberry pi(树莓派)小车控制

python3实现网页版ras

这篇文章主要为大家详细介绍了python3实现网页版raspb
完美解决pycharm导入自己写的py文件爆红问题

完美解决pycharm导入

今天小编就为大家分享一篇完美解决pycharm导入自己写
pycharm内无法import已安装的模块问题解决

pycharm内无法import

今天小编就为大家分享一篇pycharm内无法import已安装