小編給大家分享一下django中orm指的是什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
成都創(chuàng)新互聯(lián)主營武城網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,app軟件開發(fā)公司,武城h5重慶小程序開發(fā)公司搭建,武城網(wǎng)站營銷推廣歡迎武城等地區(qū)企業(yè)咨詢
下面我們學(xué)習(xí)DjangoORM的使用,ORM,顧名思義是 關(guān)系對象映射,django的ORM創(chuàng)建基本類,以及生成數(shù)據(jù)結(jié)構(gòu)。創(chuàng)建類步驟:
1,根據(jù)類自動創(chuàng)建數(shù)據(jù)庫表
2,根據(jù)類對數(shù)據(jù)表中的數(shù)據(jù)進(jìn)行各種操作。
為什么要配置
django默認(rèn)使用的數(shù)據(jù)庫是sqlite3,如果你想改成MySQL或者其他數(shù)據(jù)庫的話,需要?jiǎng)t在project的settings.py文件中修改DATABASES,找到它
改為
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'mydatabase', #注意了,這個(gè)數(shù)據(jù)庫名django不能創(chuàng)建,你自己需要先創(chuàng)建數(shù)據(jù)庫 'USER': 'mydatabaseuser', 'PASSWORD': 'mypassword', 'HOST': '127.0.0.1', 'PORT': '5432', } }
注: django默認(rèn)使用MySQLdb模塊連接mysql。但是在python3中沒有這個(gè)模塊只有python2中有這個(gè)模塊,python3只有pymysql模塊,所以我們需要主動修改為pymsql:
在project同名文件下的__init__.py文件中添加如下代碼即可
import pymysql
pymysql.install_as_MySQLdb()
注:沒有 pymysql 的話,可以這樣安裝 pip install pymysql
創(chuàng)建基類
在app的modles.py里面創(chuàng)建基本類,這些類必須繼承modles.Model作為父類。注意了,這個(gè)modles.py不能更名,這個(gè)是django規(guī)定好的。
#生成表名 app名_userinfo,例如app名叫 app01,則表名:app01_userinfo
class UserInfo(models.Model): #id是django默認(rèn)幫你創(chuàng)建,然后默認(rèn)是主鍵,自增長 #列名 ,字符串類型,指定字符串的長度為32 username = models.CharField(max_length=32) password = models.CharField(max_length=64)
注冊App
這個(gè)在 project.settings.py里面install app中設(shè)置。加上你的app名字
生成數(shù)據(jù)庫表
打開終端輸入這兩條命令:
1,python manage.py makemigrations 2,python manage.py migrate
通過python manage.py makemigrations 找到我們所有的models,然后通過python manage.py migrate幫我生成數(shù)據(jù)庫表。
看完了這篇文章,相信你對django中orm指的是什么有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!