最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

簡單了解Django ORM常用字段類型及參數配置

 更新時間:2020年01月07日 14:53:34   作者:子欽加油  
這篇文章主要介紹了簡單了解Django ORM常用字段類型及參數配置,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

這篇文章主要介紹了簡單了解Django ORM常用字段類型及參數配置,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

一、數值型

  • AutoField對應int(11)。自增主鍵,Django Model默認提供,可以被重寫。
  • BooleanField對應tinyint(1)。布爾類型字段,一般用于記錄狀態(tài)標記。
  • DecimalField對應decimal。開發(fā)對數據精準要求較高大的業(yè)務時考慮使用。比如:cash=models.DecimalField(max_length, decimal_places=2, default=0, verbose_name=“消費金額”),就是定義長度為8位、精度位2位的數字,例如數字:666666.66。
  • IntergerField對應**int(11) **。同AutoField一樣,唯一的差別就是不自增。
  • PositiveIntegerField。同IntegerField,只包含正整數。
  • SmallIntegerField對應smallint。小整數時一般會用到。

二、字符型

django對應到Mysql中有兩種類型:longtext和varchar。

​ 除了TextField是longtest類型外,其他屬于varchar類型。

  • CharField對應varchar。基礎的varchar類型。
  • URLField.繼承自CharField,但是實現了對URL特特殊處理。用來存儲URL數據,非URL數據可以在業(yè)務層就拒絕掉,不會存入數據庫中。
  • UUIDField對應char(32)。除了在PostgreSQL中使用的是uuid類型外,在其他數據庫中均是固定長度char(32),用來存放生成的唯一id。
  • EmailField。同URLfield一樣繼承自CharField,多了對email的特殊處理。
  • FileField。同URLField一樣,它繼承自CharField,對了對文件的特殊處理。
  • TextField對應longtext。一般用于存放大量文本內容,比如新聞正文、博客正文。
  • ImageField。繼承自FileField,用來處理圖片相關的數據,在展示上會有所不同。

三、日期類型

django中有3中日期類型,分別對應Mysql的date、datetime和time

  • DateField對應date
  • DateTimeField對應datetime
  • TimeField對應time

四、關系類型

  • ForeignKey,外鍵
  • OneToOneField,一對一
  • ManyToManyField,多對多

五、參數

上面django所提供的字段都是類。

比如models.CharField的定義就是:class CharField:。

每個字段里面都提供了參數可以選擇:

  • null??梢酝琤lank進行對比。null用于設定在數據庫層面是否允許為空
  • blank。針對業(yè)務層面,該值是否允許為空。
  • choices。配置字段的choices后,在admin頁面上就可以看到對應的可選項展示。
  • db_column。默認情況下,定義的field就是對應數據庫中的字段名稱,通過這個參數可以指定Model中的某個字段對應數據庫中的哪個字段。
  • db_index。數據庫索引配置。
  • default。默認值配置。
  • editable。是否可編輯,默認是True。如果不想這個字段顯示在頁面上,可以配置為False。
  • error_messages。用來自定義字段值校驗失敗時的異常提示,它是字典格式。key的值可選項為null、blank、invalid、invalid_choice、unique和unique_for_date。
  • help_text。字段提示語,配置這一項后,在頁面對應字段的下方會展示此配置。
  • primary_key。主鍵,一個Model只允許設置一個字段為primary_key。
  • unique。唯一約束,當需要配置唯一值時,設置unique=True,設置此項后,不需要設置db_index。
  • unique_for_date。針對date(日期)的聯合約束。比如說一天只能寫一篇博文,即:unique_for_date=“博文”
  • unique_for_month。針對月份的聯合約束 。
  • unique_for_month。針對年份的聯合約束。
  • verbose_name。字段對應的展示文案。
  • validators。自定義校驗邏輯,同form類似。

關于Django字段類型中 blank和null的區(qū)別

blank

設置為True時,字段可以為空。設置為False時,字段是必須填寫的。字符型字段CharField和TextField是用空字符串來存儲空值的。

如果為True,字段允許為空,默認不允許。

null

設置為True時,django用Null來存儲空值。日期型、時間型和數字型字段不接受空字符串。所以設置IntegerField,DateTimeField型字段可以為空時,需要將blank,null均設為True。

如果為True,空值將會被存儲為NULL,默認為False。

如果想設置BooleanField為空時可以選用NullBooleanField型字段。

一句話概括

  • null 是針對數據庫而言,如果 null=True, 表示數據庫的該字段可以為空。
  • blank 是針對表單的,如果 blank=True,表示你的表單填寫該字段的時候可以不填,比如 admin 界面下增加 model 一條記錄的時候。直觀的看到就是該字段不是粗體
  • 通俗點說,該字段null=true后,你進行插入,修改操作時可以為空,然后Django把空值轉換成null存在數據庫中,而blank只是在表單驗證的時候會檢測你是否可以為空

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Flask框架學習筆記(一)安裝篇(windows安裝與centos安裝)

    Flask框架學習筆記(一)安裝篇(windows安裝與centos安裝)

    Flask是一個輕量級的Web應用框架, 使用Python編寫。Flask也被稱為 “microframework” ,因為它使用簡單的核心,用 extension 增加其他功能。
    2014-06-06
  • python word轉pdf代碼實例

    python word轉pdf代碼實例

    這篇文章主要介紹了python word轉pdf代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-08-08
  • Python?Playwright的使用詳解

    Python?Playwright的使用詳解

    本篇博客為大家介紹一款新的自動化測試工具,效果類似?selenium,但是這個模塊年輕。模塊名稱為?playwright-python,微軟開源的,是針對?Python?語言的純自動化工具,感興趣的可以了解一下
    2022-10-10
  • Python交換變量

    Python交換變量

    Python美味第一頓,來個方便快捷的變量交換!為什么是Python?!因為Python中交換變量不需要臨時變量!
    2008-09-09
  • Python個人博客程序開發(fā)實例信息顯示

    Python個人博客程序開發(fā)實例信息顯示

    這篇文章主要介紹了怎樣用Python來實現一個完整的個人博客系統(tǒng),我們通過實操上手的方式可以高效的鞏固所學的基礎知識,感興趣的朋友一起來看看吧
    2022-12-12
  • Python實現圖像隨機添加椒鹽噪聲和高斯噪聲

    Python實現圖像隨機添加椒鹽噪聲和高斯噪聲

    圖像噪聲是指存在于圖像數據中的不必要的或多余的干擾信息。在噪聲的概念中,通常采用信噪比(Signal-Noise?Rate,?SNR)衡量圖像噪聲。本文將利用Python實現對圖像隨機添加椒鹽噪聲和高斯噪聲,感興趣的可以了解一下
    2022-09-09
  • Python網絡爬蟲信息提取mooc代碼實例

    Python網絡爬蟲信息提取mooc代碼實例

    這篇文章主要介紹了python網絡爬蟲與信息提取mooc,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03
  • Python數據分析中Groupby用法之通過字典或Series進行分組的實例

    Python數據分析中Groupby用法之通過字典或Series進行分組的實例

    下面小編就為大家分享一篇Python數據分析中Groupby用法之通過字典或Series進行分組的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • 如何處理json中不帶雙引號的key的問題

    如何處理json中不帶雙引號的key的問題

    這篇文章主要介紹了如何處理json中不帶雙引號的key的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • python讀取圖片的幾種方式及圖像寬和高的存儲順序

    python讀取圖片的幾種方式及圖像寬和高的存儲順序

    這篇文章主要介紹了python讀取圖片的幾種方式及圖像寬和高的存儲順序,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02

最新評論

宿迁市| 青川县| 延边| 桃江县| 东源县| 广东省| 乌鲁木齐县| 库车县| 宁武县| 固安县| 临湘市| 电白县| 托克托县| 罗山县| 九江县| 汝南县| 枞阳县| 绥宁县| 溧水县| 平罗县| 武定县| 通海县| 措美县| 富宁县| 巫溪县| 定远县| 贵定县| 宁城县| 稻城县| 伊川县| 和硕县| 博罗县| 威宁| 海门市| 甘洛县| 沧州市| 庆元县| 邯郸县| 政和县| 梁山县| 吉安县|