day3-django模型对应关系

2018-09-12  本文已影响0人  旧时初_2e8d

模型的对应关系,一对一,一对多,以及多对多的关系。

模型对应关系描述如下:
1:1 一对一 OneToOneField
1:N 一对多 ForeignKey
M:N 多对多 ManyToManyField

related_name属性
related_name='stu'
当存在这个属性时, stu_info.student和stu_info.stu只能用一个

绑定关系
通过id值进行绑定

        #给id为1的学生添加拓展表中id为2的信息
        stu = Student.objects.get(id=1)
        #绑定关系1
        stu.stu_info_id = 2
        #绑定关系2
        # stu.stu_info = StudentInfo.objects.get(id=2)

创建学生信息表

class StudentInfo

创建班级表

class Grade

创建课程表

class Course

创建学生表

class Student

一对一关系

stu_info = models.OneToOneField(StudentInfo)

查询

通过学生表查询信息表

Student.StudentInfo

通过信息表查询学生表

StudentInfo.Student

一对多关系

g = models.ForeignKey(Grade)

查询

通过学生表查询班级表

Student.Grade

通过班级表查询学生表

Grade.student_set

多对多关系

c = models.ManyToManyField(Course)

查询

通过学生表查询课程表

Student.Course

通过课程表查询学生表

Course.student_set

中间表加数据

Student.Course.add()

中间表删除数据

Student.Course.remove()

补充:
判断提交方式


if request.method == 'GET':
    pass
if request.method == 'POST':
    pass
上一篇 下一篇

猜你喜欢

热点阅读