1. 程式人生 > >初識django之orm布置與增刪改查

初識django之orm布置與增刪改查

對比 索引 取值 ati tab sqlite man 本機 pytho

1.數據庫驅動:給database--->data source下載對應數據庫的驅動。 2.數據庫工具包:py2.0支持MySQLdb(),但是py3中MySQLdb()已經不能完全適用,需要置換,畢竟orm底層上還是基於關於數據庫操作的py工具包,請先確保已經下載好了pymysql,在項目文件夾下的__init__.py下添加: import pymysql pymysql.install_as_MySQLdb() 3.數據庫連接設置:在settings.py裏配置數據庫連接信息:DATABASES = { ‘default‘: { #‘ENGINE‘: ‘django.db.backends.sqlite3‘, #‘NAME‘: os.path.join(BASE_DIR, ‘db.sqlite3‘),這兩行隱去了django的默認配置 ‘ENGINE‘: ‘django.db.backends.mysql‘, ‘NAME‘:‘django_orm‘, ‘USER‘:‘root‘, ‘PASSWORD‘:‘song6748106‘, ‘HOST‘:‘‘,#不填默認本機 ‘PORT‘:‘3306‘, } } 此處需要註意,NAME,PASSWORD等需要大寫,否則連接不上,挺坑的。 以上配置基本完成,接下來開始動數據庫了。 1.在models.py定義類,映射表結構,此處需要 from django.db import models 引入models包。(terminal輸入python manage.py make migirations,即作用於這一環節makemigrations指令是用models裏面的model和當前的migrations代碼裏面的model做對比,如果有新的修改,會新建py文件記錄。 2.路由配置,打開urls.py新建路由。 3.視圖配置,引入model,from app.models import * 並在視圖函數下增刪改查。 通過orm對數據庫記錄添加(默認表Author): 方式一:A1=Author(id=,name="",sex="",) #實例了models中的類(映射數據庫中的一張表),field要一一對應,必須save,save是全field進行update,效率低。 A1.save() 方式二:Author.objects.create(id=2,name="曹雪芹",sex="女",) 通過orm對數據庫記錄刪除: Author.objects.filter(name="曹雪芹").delete() 通過orm對數據庫記錄修改: 方式一:Author.objects.filter(name="").update(sex=" ") 方式二:A=Author.objects.get(name="吳承恩") #get取到的一定是一條記錄,filter取到的是一個queryset集合(不適用0索引取值),多個修改請使用方式一。 A.sex="女" A.save()

初識django之orm布置與增刪改查