当有两个表,例如一个学生表,一个班级表,是多对一的关系。
方法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中处理一对多表模型的跨表查询方法,包括三种不同的实现方式,并讲解了如何在HTML页面上获取查询结果。适合Django开发者参考学习。
314

被折叠的 条评论
为什么被折叠?



