一、关系梳理
为了把前面介绍的基础知识掌握牢固,本项目主要目的在于灵活运用所学,制作一个简单的学生管理系统。主要功能包括:学生管理、老师管理、课程管理。
学生管理:增删改查
老师管理:增删改查
课程管理:增删改查
说到底,就是练习数据库的增删改查(CURD),这里的数据表比较简单,就三张表:学生表、老师表、课程表。
在创建数据表之前,我们来梳理一下这三张表之间的关系。一个学生有多门课程;一个老师可以教多门课程,一个课程可以有多个老师教。
二、表结构
上面已经梳理好了表关系,则直接建模即可。
from django.db import models
class Classes(models.Model):
caption = models.CharField(max_length=32)
class Student(models.Model):
name = models.CharField(max_length=32)
email = models.CharField(max_length=32,null=True)
cls = models.ForeignKey('Classes')
class Teacher(models.Model):
name = models.CharField(max_length=32)
cls = models.ManyToManyField('Classes')
class Administrator(models.Model):
username = models.CharField(max_length=32)
password = models.CharField(max_length=32)
关系图如下: