這篇博客主要帶大家了解 多對多關係 ( Many To Many )
和一對多 關係的差異 是在 Django 會自動生成一張表(中間表) 來管理多對多關係 !
那也可以使用 through選項來指定表示要使用的 中間表 ,即 Django 模型。
那就開始進入今天的主題 !
ManyToManyField(to,** options)
建立模型 models.py 學生與課程
class Teacher(models.Model):
teacher_name = models.CharField(max_length=10)
def __str__(self):
return '教師名稱:{}'.format(self.teacher_name)
class Meta:
db_table = 'tb_teacher'
class Course(models.Model):
clazz = models.CharField(max_length=30)
course_name = models.CharField(max_length=30)
teacher = models.ForeignKey(Teacher, on_delete=models.CASCADE, related_name='teacher')
def __str__(self):
return '教師: {} 開課班級: {} 課程名稱: {}'.format(
self.teacher.teacher_name, self.clazz, self.course_name
)
class Meta: