多對一關係很多,例如一個學生有多門課程,所有的課程同時也可以對應於一個學生(大概理解是這個意思)。
from django.db import models
學生
class student(models.Model):
name = models.CharField(max_length=255,verbose_name="學生姓名")
課程
class course(models.Model):
menpai = models.ForeignKey('student', on_delete=models.CASCADE) #定義了models.CASCADE屬性
name = models.CharField(max_length=255,verbose_name="課程名稱")
models.CASCADE(默認) 級聯刪除
modles.PROTECT : 當刪除一個具有外鍵關係的對象時,會引發一個異常,阻止刪除該對象
models.SET_NULL: 設置刪除對象所關聯的外鍵字段爲null。但字段的null屬性必需爲True
models.SET_DEFAULT : 設置刪除對象所關聯的外鍵字段爲默認的值。
models.SET(value) :設置刪除對象所關聯的對象的外鍵字段爲value,value也可以是一個可調用函數。