#以下是示例一对一,多对多的表关系
class Department(models.Model):
#学院表,字段有id和name
d_id = models.AutoField(primary_key=True)
d_name = models.CharField(max_length=12)
def __str__(self):
return 'd_id=%s ,\n d_name=%s'%(self.d_id,self.d_name)
class Students(models.Model):
#学生表,字段有id和name 还有关联的外键表学院表
s_id = models.AutoField(primary_key=True)
s_name = models.CharField(max_length=10)
department = models.ForeignKey('Department',on_delete=models.CASCADE)# on_delete 代表级联删除 Django2.0版本必须写
#外键关联 一对多
class Stu_detail(models.Model):
#一对一表,与学生表形成一对一关系 与学生id形成一对一关系
s_id = models.OneToOneField('Students',on_delete=models.CASCADE)
age = models.IntegerField()
gender = models.BooleanField(default=1)
city = models.CharField(max_length=12)
class Course(models.Model):
#多对多,此为课程表与学生表形成多对多关系
c_id = models.AutoField(primary_key=True)
c_name = models.CharField(max_length=14)
student = models.ManyToManyField('Students')
```注:建立完成模型,要进行数据库的映射操作
python manage.py makemigrations
python manage.py migrate
7.一对一、多对多表关系实例
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...