Django中modles.py怎么創建表?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
創新互聯,為您提供成都網站建設、網站制作公司、網站營銷推廣、網站開發設計,對服務陽光房等多個行業擁有豐富的網站建設及推廣經驗。創新互聯網站建設公司成立于2013年,提供專業網站制作報價服務,我們深知市場的競爭激烈,認真對待每位客戶,為客戶提供賞心悅目的作品。 與客戶共同發展進步,是我們永遠的責任!
modles.py創建表
ORM字段介紹
Djano提供了很多字段類型,比如URL/Email/IP/ 但是MySQL數據沒有這些類型,這類型存儲到數據庫上本質是字符串數據類型,其主要目的是為了封裝底層SQL語句;
1、字符串類(以下都是在數據庫中本質都是字符串數據類型,此類字段只是在Django自帶的admin中生效)
name=models.CharField(max_length=32)
EmailField(CharField): IPAddressField(Field) URLField(CharField) SlugField(CharField) UUIDField(Field) FilePathField(Field) FileField(Field) ImageField(FileField) CommaSeparatedIntegerField(CharField)
擴展
models.CharField 對應的是MySQL的varchar數據類型。
char 和 varchar的區別 :
char和varchar的共同點是存儲數據的長度,不能超過max_length限制,
不同點是varchar根據數據實際長度存儲,char按指定max_length()存儲數據;所有前者更節省硬盤空間;
2、時間字段
models.DateTimeField(null=True) date=models.DateField()
3、數字字段
(max_digits=30,decimal_places=10)總長度30小數位 10位)
數字:
num = models.IntegerField() num = models.FloatField() 浮點 price=models.DecimalField(max_digits=8,decimal_places=3) 精確浮點
4、枚舉字段
choice=( (1,'男人'), (2,'女人'), (3,'其他') ) lover=models.IntegerField(choices=choice) #枚舉類型
擴展
在數據庫存儲枚舉類型,比外鍵有什么優勢?
1、無需連表查詢性能低,省硬盤空間(選項不固定時用外鍵)
2、在modle文件里不能動態增加(選項一成不變用Django的choice)
其他字段
db_index = True 表示設置索引 unique(唯一的意思) = True 設置唯一索引 聯合唯一索引 class Meta: unique_together = ( ('email','ctime'), ) 聯合索引(不做限制) index_together = ( ('email','ctime'), ) ManyToManyField(RelatedField) #多對多操作
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注創新互聯行業資訊頻道,感謝您對創新互聯的支持。
新聞名稱:Django中modles.py怎么創建表
鏈接URL:http://m.newbst.com/article22/pjdhjc.html
成都網站建設公司_創新互聯,為您提供做網站、虛擬主機、品牌網站制作、網頁設計公司、靜態網站、ChatGPT
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯