Django之?dāng)?shù)據(jù)庫表名的重命名

  • 數(shù)據(jù)庫中的表名稱
- 為了節(jié)省時間,Django 會自動的使用你的 model class 的名稱和包含這個 model 的 app 名稱來構(gòu)建 數(shù)據(jù)庫的表名稱。一個 model 的數(shù)據(jù)庫表名稱是通過將 “app label” – 你在 manage.py startapp 中使用的名稱 – 和 model 的類名稱,加上一個下劃線在他們之間來構(gòu)成。

- 例如,如果你有一個 app 叫做 bookstore (使用 manage.py startapp bookstore 創(chuàng)建),以 及一個 model 定義為 class Book 這樣將會創(chuàng)建一個名為 bookstore_book 的數(shù)據(jù)庫表。

- 如果想自定義數(shù)據(jù)庫的表名稱,需要在 class Meta 使用 db_table 參數(shù)來自定義。

- 如果你的數(shù)據(jù)庫表名稱是一個SQL保留字,或者它包含不允許出現(xiàn)在 Python 變量中的字符 (比如連字 符)這是沒問題的。這是因為 Django 會自動給列名和表名添加引號。
- 強烈建議你在通過 db_table 重載數(shù)據(jù)庫表名稱時,使用小寫字母,特別是當(dāng)你在使用 MySQL 作為后臺數(shù)據(jù)庫時。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容