欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Django數(shù)據(jù)庫(kù)ORM操作-單表的創(chuàng)建,增加,刪除,更改和查詢-創(chuàng)新互聯(lián)

Django里面,管理數(shù)據(jù)庫(kù)和sqlarchemy類似,也是通過orm框架來實(shí)現(xiàn)的。所有的數(shù)據(jù)庫(kù)的建立,都是在model.py里面通過類來實(shí)現(xiàn)的。

目前創(chuàng)新互聯(lián)已為超過千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬空間、綿陽(yáng)服務(wù)器托管、企業(yè)網(wǎng)站設(shè)計(jì)、文水網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。

首先看看如何創(chuàng)建一個(gè)單表:

a. 先定義一個(gè)類,繼承models.Model, 然后根據(jù)需求定義參數(shù),這些參數(shù)的類型和變量后面會(huì)進(jìn)一步闡述

models.py

from django.db import models class UserInfo(models.Model):     username = models.CharField(max_length=32)     password = models.CharField(max_length=64)

b. 注冊(cè)app

settings.py

INSTALLED_APPS = [     'django.contrib.admin',     'django.contrib.auth',     'django.contrib.contenttypes',     'django.contrib.sessions',     'django.contrib.messages',     'django.contrib.staticfiles',     'app01', ]

c.執(zhí)行命令。 第一條命令會(huì)生成一個(gè)初始化文件,第二個(gè)命令會(huì)生成對(duì)應(yīng)的表

python manage.py  makemigrations python manage.py  migrate

Django 數(shù)據(jù)庫(kù)ORM操作 - 單表的創(chuàng)建,增加,刪除,更改和查詢

這樣,就在PyCharm自帶的sqlite數(shù)據(jù)庫(kù)里面成功的生成了一個(gè)app01_UserInfo的表。這個(gè)表默認(rèn)會(huì)有一個(gè)自增的id作為主鍵,另外兩個(gè)字段是我們通過類創(chuàng)建的。

d. 如果希望使用mysql,因?yàn)镈jango默認(rèn)使用了MySqldb模塊,這個(gè)在3.0版本里面不存在,會(huì)直接報(bào)錯(cuò)。我們需要改為pymysql的模塊,方法如下:

在project同名文件夾下的__init__文件中添加如下代碼即可:

import pymysql

pymysql.install_as_MySQLdb()

Django 數(shù)據(jù)庫(kù)ORM操作 - 單表的創(chuàng)建,增加,刪除,更改和查詢

2. 對(duì)于單表的增刪改查詢

查詢

獲取所有結(jié)果,獲取到的結(jié)果是一個(gè)QuerySet的類似列表的對(duì)象,每一個(gè)元素本身又是一個(gè)對(duì)象,包括了id,name,password等屬性。

obj = models.UserInfo.objects.all()

<QuerySet [<UserInfo: UserInfo object>, <UserInfo: UserInfo object>, <UserInfo: UserInfo object>, <UserInfo: UserInfo object>, <UserInfo: UserInfo object>]>

可以通過filter進(jìn)行過濾,相當(dāng)于sql的where語(yǔ)句,因?yàn)榻Y(jié)果也是QuerySet,因此需要再使用first()獲取第一個(gè)值

 obj = models.UserInfo.objects.filter(id=nid).first()

增加

models.UserInfo.objects.create(username=u,password=p,user_group_id=3)

刪除,可以在filter的基礎(chǔ)上進(jìn)行刪除

models.UserInfo.objects.filter(id=nid).delete()

修改,有兩種常見方式

第一個(gè)方式

models.UserInfo.objects.filter(id=nid).update(username=u,password=p)

第二個(gè)方式

obj=models.UserInfo.objects.filter(id=nid) obj.username=u obj.save()

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

網(wǎng)站名稱:Django數(shù)據(jù)庫(kù)ORM操作-單表的創(chuàng)建,增加,刪除,更改和查詢-創(chuàng)新互聯(lián)
URL鏈接:http://chinadenli.net/article10/ddchgo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作微信公眾號(hào)電子商務(wù)標(biāo)簽優(yōu)化小程序開發(fā)移動(dòng)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)