Django數據模型——通用欄位選項

来源:https://www.cnblogs.com/qttblog/archive/2018/01/27/8367186.html
-Advertisement-
Play Games

欄位 一個模型最重要也是唯一必需的部分,是它定義的資料庫欄位 欄位名稱限制 1、欄位名不能是python保留字,這樣會導致python語法錯誤 2、欄位不能包含連續一個以上的下劃線,這樣會和Django查詢語句語法衝突 通用欄位選項 null 如果設置為 True 的話,Django將在資料庫中存儲 ...


欄位

一個模型最重要也是唯一必需的部分,是它定義的資料庫欄位

欄位名稱限制

1、欄位名不能是python保留字,這樣會導致python語法錯誤

2、欄位不能包含連續一個以上的下劃線,這樣會和Django查詢語句語法衝突

通用欄位選項

null 如果設置為 True 的話,Django將在資料庫中存儲空值為 NULL 。預設為 False 

blank 如果是 True ,該欄位允許留空,預設為 False

choices 一個包含雙元素元組的可迭代的對象,用於給欄位提供選項

db_column 當前欄位在資料庫中對應的列的名字

db_index 如果為 True,創建表格時對這一列穿件資料庫索引

default 欄位預設值

editable 如果為False,這個欄位在管理那界面或者表單將不能編輯,預設為True

help_text 在管理界面表單對象里顯示在欄位下麵的額外幫助文本。即使你沒有管理表單這個屬性對文檔也是有用的

primary_key 如果為 True ,這個欄位就會成為模型的主鍵

radio_admin 對於 ForeignKey 或者擁有 choices 設置的欄位,Django管理界面會使用列表選擇框(<select>)。如果 radio_admin 設置為 True 的話,Django就會使用單選按鈕界面。 如果欄位不是 ForeignKey 或者沒有 choices 設置的話,就不要對欄位只用這個選項。

unique 如果是 True ,這個欄位的值在整個表中必須是唯一的

unique_for_date 把它的值設成一個 DataField 或者 DateTimeField 的欄位的名稱,可以確保欄位在這個日期內不會出現重覆值

unique_for_month 和 unique_for_date 類似,只是要求欄位在指定欄位的月份內唯一

unique_for_year 和 unique_for_date 及 unique_for_month 類似,只是時間範圍變成了一年

verbose_name ManyToManyField 和 OneToOneField 之外的欄位都接受一個詳細名稱作為第一個位置參數。如果詳細名稱沒有給定的話,Django會把欄位的屬性名中的下劃線轉化成空格後的字元串當作詳細名稱。

例:詳細名稱是 "Person's first name" : first_name = models.CharField("Person's first name", maxlength=30) 下麵的例子中,詳細名稱是 "first name" : first_name = models.CharField(maxlength=30) ForeignKey 、 ManyToManyField 和 OneToOneField 要求第一個參數是一個模型類,所以只能使用關鍵字參數 verbose_name : poll = models.ForeignKey(Poll, verbose_name="the related poll") sites = models.ManyToManyField(Site, verbose_name="list of sites") place = models.OneToOneField(Place, verbose_name="related place") 這種轉換不會把 verbose_name 的首字母大寫,Django會根據需求自動大寫首字母。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • # 抓取內容:商品名稱,商品價格,商品鏈接,店鋪名稱,店鋪鏈接 # 爬取的時候之前返回了多次302,301 但是html網頁還是被爬取下來了 抓取的首頁: start_urls = ['https://list.tmall.com/search_product.htm?spm=a220m.10008 ...
  • 1月——華清遠見成都中心——胡昆——嵌入式學科——數模轉換晶元PCF8591 一.AD轉換的概念 AD轉換的功能是把模擬量電壓轉換為數字量電壓。DA轉換的功能正好相反,就是講數字量轉換位模擬量。 二.晶元PCF8591介紹 PCF8591是一個單片集成、單獨供電、低功耗、8-bit CMOS數據獲取 ...
  • 2、mkdir hadoop fs -mkdir 3、df du [hadoop@h201 hadoop-2.6.0-cdh5.5.2]$ hadoop fs -df /18/01/28 22:49:51 WARN util.NativeCodeLoader: Unable to load nati ...
  • date類型是oracle中存儲日期類的一種常用類型,其處理也是在資料庫使用中比較多需要註意的地方。如我們可以使用to_char函數將其轉化為任意時間格式的字元串,也可使用to_date函數轉化相應的字元串為日期格式。 本篇主要介紹這樣一種使用情況。 問題描述:欄位保存為帶有時分秒格式的日期形式,現 ...
  • 1.複製表結構及數據到新表 CREATE TABLE 新表 SELECT * FROM 舊表 2.只複製表結構到新表 CREATE TABLE 新表 SELECT * FROM 舊表 WHERE 1=2 即:讓WHERE條件不成立. 方法二:(由tianshibao提供) CREATE TABLE  ...
  • 聚合函數是對一組值執行計算並返回單一的值的函數,它經常與SELECT語句的GROUP BY子句一同使用,SQL SERVER 中具體的聚合函數如下:1. AVG 返回指定組中的平均值,空值被忽略。 例:select prd_no,avg(qty) from sales group by prd_no ...
  • 一、列表解析式 列表解析是外面一對中括弧,它返回的是列表。 一般形式為:[expr for item in itratoble] filter()方法接受一個函數和一個可迭代對象兩個參數,返回一個生成器對象。 map()方法接受一個函數和一個可迭代對象兩個參數,返回一個列表。 列表解析式的執行速度比 ...
  • 1、對錶中數據的增刪改(DML) create table t_user( id int primary key auto_increment, name varchar(20) not null, email varchar(20) unique ) 為表添加記錄 (必須掌握) insert in ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...