您好,登錄后才能下訂單哦!
小編給大家分享一下django外鍵關鍵值如何設置,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
django外鍵關鍵值可以自己定義,也可以使用沒默認值。
定義模型類
模型類被定義在"應用/models.py"文件中。
模型類必須繼承自Model類,位于包django.db.models中。
1) 數據庫表名
模型類如果未指明表名,Django默認以小寫app應用名_小寫模型類名為數據庫表名。
可通過db_table指明數據庫表名。
2) 關于主鍵
django會為表創建自動增長的主鍵列,每個模型只能有一個主鍵列,如果使用選項設置某屬性為主鍵列后django不會再創建自動增長的主鍵列。
默認創建的主鍵列屬性為id,可以使用pk代替,pk全拼為primary key。
3) 屬性命名限制
不能是python的保留關鍵字。
不允許使用連續的下劃線,這是由django的查詢方式決定的。
定義屬性時需要指定字段類型,通過字段類型的參數指定選項,語法如下:
屬性=models.字段類型(選項)。
外鍵
在設置外鍵時,需要通過on_delete選項指明主表刪除數據時,對于外鍵引用表數據如何處理,在django.db.models中包含了可選常量:
CASCADE級聯,刪除主表數據時連通一起刪除外鍵表中數據,
PROTECT保護,通過拋出ProtectedError異常,來阻止刪除主表中被外鍵應用的數據,
SET_NULL設置為NULL,僅在該字段null=True允許為null時可用,
SET_DEFAULT設置為默認值,僅在該字段設置了默認值時可用,
SET()設置為特定值或者調用特定方法,
DO_NOTHING不做任何操作,如果數據庫前置指明級聯性,此選項會拋出IntegrityError異常。
以上是“django外鍵關鍵值如何設置”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。