Django的外鍵創建
阿新 • • 發佈:2019-02-08
相關 foreign cas def strong 刪除 del -s 五個
關鍵語法:
models.ForeignKey("UserGroup",to_field="gid",default=1,on_delete=models.CASCADE) 老版本這個參數(models.CASCADE)是默認值
在django2.0後,定義外鍵和一對一關系的時候需要加on_delete選項,此參數為了避免兩個表裏的數據不一致問題,不然會報錯
參數:
"UserGroup" #外鍵另外一張表
to_field="gid" #另外一張表的字段
on_delete=models.CASCADE #因為不加這個會報錯相關
on_delete有CASCADE、PROTECT、SET_NULL、SET_DEFAULT、SET()五個可選擇的值
CASCADE:此值設置,是級聯刪除。
PROTECT:此值設置,是會報完整性錯誤。
SET_NULL:此值設置,會把外鍵設置為null,前提是允許為null。
SET_DEFAULT:此值設置,會把設置為外鍵的默認值。
SET():此值設置,會調用外面的值,可以是一個函數。
一般情況下使用CASCADE就可以了。
Django的外鍵創建