Django模型基础第四节:多表查询
关系表的数据操作:
查看数据库中的表结构.
一对多表关系数据的添加:
1.第一种方式就是跟之前的一样,用传参的方法添加,需要注意的是外键的值必须是关联表中已经存在的值.
2.第二种方式是用的属性赋值的方式,因为我们在模型类有定义了一个department的属性,而这个属性的对象的类型必须是department表的类实例对象
表关联对象的访问:
外键关联 一对一 学院与学生
如果只用department 而不用department_id 必须创建实例对象
查询某个学生属于哪个学院
学院查询学生
学生表中存在外键属性
子表查询主表为正向查询
主表查询子表为反向查询
当学院表查询学生的时候 反向查询 实例.类名_set
举例:北大招聘学生哈哈哈 (更改对应的外键值 add方法)
一定是添加实例对象 所存在的数据才能通过add方法进行添加
北大招聘新生老炮儿
查询
从学生表中获取学生所在的学院
查询属于北大的学生
查询所有学院名字为三毛学生的年龄
查询年龄为18岁的学生
多表查询 跨关联关系的查询:
Django 提供一种强大而又直观的方式来“处理”查询中的关联关系,它在后台自动帮你处理JOIN。 若要跨越关联关系,只需使用关联的模型字段的名称,并使用双下划线分隔,直至你想要的字段: