創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務(wù)器提供商,新人活動買多久送多久,劃算不套路!
成都服務(wù)器托管,創(chuàng)新互聯(lián)提供包括服務(wù)器租用、多線服務(wù)器托管、帶寬租用、云主機(jī)、機(jī)柜租用、主機(jī)租用托管、CDN網(wǎng)站加速、空間域名等業(yè)務(wù)的一體化完整服務(wù)。電話咨詢:13518219792小編給大家分享一下django中orm指的是什么意思,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
下面我們學(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ù)庫的話,需要則在project的settings.py文件中修改DATABASES,找到它
改為
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'mydatabase', #注意了,這個數(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中沒有這個模塊只有python2中有這個模塊,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作為父類。注意了,這個modles.py不能更名,這個是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
這個在 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指的是什么意思的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道!