国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

django模型層(model)進(jìn)行建表、查詢與刪除的基礎(chǔ)教程

2020-02-16 10:46:48
字體:
供稿:網(wǎng)友

前言

在django的框架設(shè)計(jì)中采用了mtv模型,即Model,template,viewer

Model相對(duì)于傳統(tǒng)的三層或者mvc框架來說就相當(dāng)對(duì)數(shù)據(jù)處理層,它主要負(fù)責(zé)與數(shù)據(jù)的交互,在使用django框架設(shè)計(jì)應(yīng)用系統(tǒng)時(shí),需要注意的是django默認(rèn)采用的是orm框架中的codefirst模型,也就是說開發(fā)人員只需要專注于代碼的編寫,而不需要過多的關(guān)注數(shù)據(jù)庫(kù)層面的東西,把開發(fā)人員從數(shù)據(jù)庫(kù)中解放出來

django會(huì)根據(jù)Model類生成一個(gè)數(shù)據(jù)庫(kù)鏡像文件,然后再使用該鏡像文件生成數(shù)據(jù)庫(kù),同時(shí)該文件將記錄與數(shù)據(jù)庫(kù)同步版本的變化,所以在使用django進(jìn)行開發(fā)時(shí)不要手工去修改數(shù)據(jù)庫(kù),這樣會(huì)造成django框架的版本記錄不正確,從而無法正確的同步數(shù)據(jù)模型與數(shù)據(jù)庫(kù)的內(nèi)容

django生成的鏡像文件內(nèi)容如下:

from __future__ import unicode_literalsfrom django.db import migrations, modelsclass Migration(migrations.Migration):dependencies = [('web', '0001_initial'),]operations = [migrations.AddField(model_name='userinfo',name='sex',field=models.BooleanField(default=True),preserve_default=False,),]

以上內(nèi)容為生的一一個(gè)版本的鏡像,內(nèi)容記錄了對(duì)model所在的app的記錄,以及執(zhí)行的動(dòng)作,如上面的鏡像文件記錄為對(duì)web的app中的model增加了一個(gè)名稱為sex的字段,字段類型為Boolean,默認(rèn)為True。

要說一個(gè)項(xiàng)目最重要的部分是什么那鐵定數(shù)據(jù)了,也就是數(shù)據(jù)庫(kù),所以下面這篇就帶大家走進(jìn)django關(guān)于模型層model的使用,model主要就是操縱數(shù)據(jù)庫(kù)不使用sql語句的情況下完成數(shù)據(jù)庫(kù)的增刪改查。

本篇僅帶領(lǐng)大家進(jìn)行簡(jiǎn)單的建表、查詢和刪除,下面話不多說了,來一起看看詳細(xì)的介紹吧。 

一、ORM

映射關(guān)系:

表名 <-------> 類名

字段 <-------> 屬性     

表記錄 <------->類實(shí)例對(duì)象

二、創(chuàng)建表(建立模型)

1、創(chuàng)建表的代碼寫在項(xiàng)目下的models文件中

1)比如我們創(chuàng)建一個(gè)圖書表,建立如下:

from django.db import models# Create your models here.class Book(models.Model): nid = models.AutoField(primary_key=True) #AutoField有序整形 IntegerField整形 title = models.CharField(max_length=32) #CharField字符 author = models.CharField(max_length=32) publishDate = models.DateField() #DateField日期類型 price = models.DecimalField(max_digits=5, decimal_places=2) #DecimalField浮點(diǎn)型也可以用FloatField

類名就是表名,屬性就是字段。繼承django提供給我們的用于做轉(zhuǎn)換的models.Model才能將我們寫的類轉(zhuǎn)化為數(shù)據(jù)庫(kù)

定義好模型之后,你需要告訴Django 使用這些模型。你要做的就是修改配置文件。

2)字段常用參數(shù)

(1)null

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 乐亭县| 侯马市| 庄河市| 太仓市| 年辖:市辖区| 涿州市| 洱源县| 额济纳旗| 旬阳县| 三门峡市| 汉源县| 兴化市| 和静县| 那曲县| 柘城县| 锡林郭勒盟| 赫章县| 黎平县| 西城区| 平原县| 夏津县| 独山县| 石楼县| 安多县| 固原市| 霞浦县| 佛山市| 斗六市| 化州市| 阜宁县| 余姚市| 江阴市| 阿克| 铜川市| 大竹县| 河间市| 全州县| 抚宁县| 康马县| 花垣县| 全州县|