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

Python Django教程之模型中字段驗(yàn)證詳解

 更新時間:2022年10月16日 08:43:46   作者:海擁  
這篇文章主要為大家詳細(xì)介紹了Python Django如何對模型中的字段進(jìn)行驗(yàn)證,文中的示例代碼講解詳細(xì),具有一定的借鑒價值,需要的可以了解一下

對模型中的字段進(jìn)行驗(yàn)證

Django模型中的內(nèi)置字段驗(yàn)證是所有Django字段預(yù)定義的默認(rèn)驗(yàn)證。每個字段都帶有來自Django驗(yàn)證器的內(nèi)置驗(yàn)證。例如,IntegerField 附帶了內(nèi)置驗(yàn)證,即它只能存儲整數(shù)值,并且該值也存儲在特定范圍內(nèi)。

極客應(yīng)用程序的 models.py 文件中輸入以下代碼。

from django.db import models
from django.db.models import Model
# 在此處創(chuàng)建模型。

class GeeksModel(Model):
	geeks_field = models.IntegerField()

	def __str__(self):
		return self.geeks_field

在運(yùn)行臨時遷移并在Django上遷移并渲染模型之后,讓我們嘗試使用字符串“GfG是最好的”創(chuàng)建一個實(shí)例。

你可以在管理界面中看到,不能在整數(shù)字段中輸入字符串。同樣,每個字段都有自己的驗(yàn)證。

基本模型數(shù)據(jù)類型和字段列表

模型最重要的部分和模型的唯一必需部分是它定義的數(shù)據(jù)庫字段列表。字段由類屬性指定。以下是 Django 中使用的所有字段類型的列表。

字段名稱描述:
AutoField它是一個自動遞增的整數(shù)字段。
BigAutoField它是一個 64 位整數(shù),很像 AutoField,只是它保證適合從 1 到 9223372036854775807 的數(shù)字。
BigIntegerField它是一個 64 位整數(shù),很像 IntegerField,只是它保證適合從 -9223372036854775808 到 9223372036854775807 的數(shù)字。
BinaryField用于存儲原始二進(jìn)制數(shù)據(jù)的字段。
BooleanField真/假字段。 此字段的默認(rèn)表單構(gòu)件是復(fù)選框輸入。
CharField它是用于從小到大尺寸輸入的字符串字段
DateField日期,在 Python 中由日期時間.date 實(shí)例表示
 它用于日期和時間,在 Python 中由日期時間.datetime 實(shí)例表示。
DecimalField它是一個固定精度的十進(jìn)制數(shù),在 Python 中由十進(jìn)制實(shí)例表示。
DurationField用于存儲時間段的字段。
EmailField它是一個字符字段,用于檢查值是否為有效的電子郵件地址。
FileField它是一個文件上傳字段。
FloatField它是一個浮點(diǎn)數(shù),在 Python 中由浮點(diǎn)實(shí)例表示。
ImageField它從 FileField 繼承所有屬性和方法,但也驗(yàn)證上傳的對象是否為有效圖像。
IntegerField它是一個整數(shù)字段。從 -2147483648 到 2147483647 的值在 Django 支持的所有數(shù)據(jù)庫中都是安全的。
GenericIPAddressfield字符串格式的 IPv4 或 IPv6 地址(例如 192.0.2.30 或 2a02:42fe::4)。
NullBooleanField就像布爾字段一樣,但允許 NULL 作為選項(xiàng)之一。
PositiveIntegerField類似于整數(shù)域,但必須為正數(shù)或零 (0)。
PositiveSmallIntegerField就像正整數(shù)字段一樣,但只允許某個(依賴于數(shù)據(jù)庫的)點(diǎn)下的值。
SlugField鼻涕蟲是一個報紙術(shù)語。slug是某物的簡短標(biāo)簽,僅包含字母,數(shù)字,下劃線或連字符。它們通常用于網(wǎng)址。
SmallIntegerField它類似于整數(shù)字段,但只允許某個(依賴于數(shù)據(jù)庫的)點(diǎn)下的值。
TextField一個大的文本字段。此字段的默認(rèn)表單構(gòu)件是文本區(qū)域。
TimeField一個時間,在 Python 中由日期時間.time 實(shí)例表示。
URLField由網(wǎng)址驗(yàn)證的網(wǎng)址的字符字段。
UUIDField用于存儲通用唯一標(biāo)識符的字段。使用蟒蛇的 UUID 類。在 PostgreSQL 上使用時,它存儲在 uuid 數(shù)據(jù)類型中,否則存儲在字符(32) 中。

關(guān)系字段

Django還定義了一組表示關(guān)系的字段。

字段名稱描述: 
ForeignKey多對一的關(guān)系。需要兩個位置參數(shù):與模型相關(guān)的類和on_delete選項(xiàng)。
ManyToManyField多對多關(guān)系。需要一個位置參數(shù):與模型相關(guān)的類,其工作方式與 ForeignKey 完全相同,包括遞歸和惰性關(guān)系。
OneToOneField一對一的關(guān)系。從概念上講,這類似于具有 unique=True 的外來密鑰,但關(guān)系的“反向”端將直接返回單個對象。

字段選項(xiàng)

字段選項(xiàng)是為每個字段提供的參數(shù),用于應(yīng)用某些約束或?qū)⑻囟ㄌ卣髻x予特定字段。例如,將參數(shù) null = True 添加到 CharField 將使其能夠在關(guān)系數(shù)據(jù)庫中存儲該表的空值。

以下是字符字段可以使用的字段選項(xiàng)和屬性。

字段選項(xiàng)描述: 
Null如果為 True,Django 將在數(shù)據(jù)庫中將空值存儲為 NULL。默認(rèn)值為假。
Blank如果為 True,則允許該字段為空。默認(rèn)值為假。
db_column要用于此字段的數(shù)據(jù)庫列的名稱。如果沒有給出,Django將使用該字段的名稱。  
Default字段的默認(rèn)值。這可以是值或可調(diào)用的對象。如果可調(diào)用,則每次創(chuàng)建新對象時都會調(diào)用它。  
help_text要與表單小部件一起顯示的額外“幫助”文本。即使您的字段未在表單上使用,它對于文檔也很有用。  
primary_key如果為 True,則此字段是模型的主鍵。
editable如果為 False,則該字段將不會顯示在管理員或任何其他模型窗體中。在模型驗(yàn)證期間也會跳過它們。默認(rèn)值為 True。  
error_messageserror_messages參數(shù)允許您覆蓋字段將引發(fā)的默認(rèn)消息。傳入包含與要覆蓋的錯誤消息匹配的鍵的字典。  
help_text要與表單小部件一起顯示的額外“幫助”文本。即使您的字段未在表單上使用,它對于文檔也很有用。  
verbose_name字段的人類可讀名稱。如果未給出詳細(xì)名稱,Django 將使用字段的屬性名稱自動創(chuàng)建它,并將下劃線轉(zhuǎn)換為空格。  
validators要為此字段運(yùn)行的驗(yàn)證程序列表。  
Unique如果為 True,則此字段在整個表中必須是唯一的。

到此這篇關(guān)于Python Django教程之模型中字段驗(yàn)證詳解的文章就介紹到這了,更多相關(guān)Django字段驗(yàn)證內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 淺析pytorch中對nn.BatchNorm2d()函數(shù)的理解

    淺析pytorch中對nn.BatchNorm2d()函數(shù)的理解

    Batch Normalization強(qiáng)行將數(shù)據(jù)拉回到均值為0,方差為1的正太分布上,一方面使得數(shù)據(jù)分布一致,另一方面避免梯度消失,這篇文章主要介紹了pytorch中對nn.BatchNorm2d()函數(shù)的理解,需要的朋友可以參考下
    2023-11-11
  • python語言基本語句用法總結(jié)

    python語言基本語句用法總結(jié)

    在本篇文章里小編給大家整理了關(guān)于python語言基本語句的相關(guān)知識點(diǎn)以及實(shí)例代碼,需要的朋友們參考下。
    2019-06-06
  • 弄清Pytorch顯存的分配機(jī)制

    弄清Pytorch顯存的分配機(jī)制

    這篇文章主要介紹了Pytorch顯存的分配機(jī)制的相關(guān)資料,幫助大家更好的理解和使用Pytorch,感興趣的朋友可以了解下
    2020-12-12
  • python 一篇文章搞懂裝飾器所有用法(建議收藏)

    python 一篇文章搞懂裝飾器所有用法(建議收藏)

    這篇文章主要介紹了python 一篇文章搞懂裝飾器所有用法(建議收藏),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • 解決python報錯MemoryError的問題

    解決python報錯MemoryError的問題

    今天小編就為大家分享一篇解決python報錯MemoryError的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • Python中Scipy庫在信號處理中的應(yīng)用詳解

    Python中Scipy庫在信號處理中的應(yīng)用詳解

    信號處理作為數(shù)字信號處理領(lǐng)域的關(guān)鍵技術(shù),涵蓋了從信號獲取、傳輸、存儲到最終應(yīng)用的一系列處理步驟,在這篇博客中,我們將深入探討Python中Scipy庫在信號處理領(lǐng)域的應(yīng)用,需要的朋友可以參考下
    2023-12-12
  • python 可視化庫PyG2Plot的使用

    python 可視化庫PyG2Plot的使用

    這篇文章主要介紹了python 可視化庫PyG2Plot的使用方法,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2021-01-01
  • 分享十個Python超級好用提高工作效率的自動化腳本

    分享十個Python超級好用提高工作效率的自動化腳本

    在這個自動化時代,我們有很多重復(fù)無聊的工作要做。?想想這些你不再需要一次又一次地做的無聊的事情,讓它自動化,讓你的生活更輕松。本文分享了10個Python自動化腳本,希望對大家有所幫助
    2022-11-11
  • python的set處理二維數(shù)組轉(zhuǎn)一維數(shù)組的方法示例

    python的set處理二維數(shù)組轉(zhuǎn)一維數(shù)組的方法示例

    這篇文章主要介紹了python的set處理二維數(shù)組轉(zhuǎn)一維數(shù)組的方法示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-05-05
  • python中split方法用法分析

    python中split方法用法分析

    這篇文章主要介紹了python中split方法用法,實(shí)例分析了split方法的功能及相關(guān)使用技巧,非常具有實(shí)用價值,需要的朋友可以參考下
    2015-04-04

最新評論

闻喜县| 云和县| 洮南市| 尼木县| 民丰县| 保康县| 澜沧| 巢湖市| 岫岩| 曲周县| 曲阜市| 库车县| 衡阳县| 宿州市| 宁德市| 夏邑县| 襄樊市| 元氏县| 文昌市| 呼图壁县| 长宁县| 桐城市| 西乌珠穆沁旗| 蓬莱市| 石屏县| 乐平市| 呼伦贝尔市| 镇宁| 东辽县| 高密市| 广昌县| 搜索| 池州市| 介休市| 新河县| 安新县| 清徐县| 宾阳县| 桐庐县| 叶城县| 贵定县|