創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務器提供商,新人活動買多久送多久,劃算不套路!
為海倫等地區(qū)用戶提供了全套網(wǎng)頁設計制作服務,及海倫網(wǎng)站建設行業(yè)解決方案。主營業(yè)務為成都做網(wǎng)站、成都網(wǎng)站設計、海倫網(wǎng)站設計,以傳統(tǒng)方式定制建設網(wǎng)站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!這篇文章給大家分享的是有關django調用數(shù)據(jù)庫數(shù)據(jù)的方法的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
Django中對數(shù)據(jù)庫的操作是由Models來完成的
Models是什么?
通常,一個Model對應數(shù)據(jù)庫的一張數(shù)據(jù)表
Django中Models以類的形式出現(xiàn)
它包含了一些基本字段以及數(shù)據(jù)的一些行為
所以,在Django中所有對數(shù)據(jù)庫的操作,就是對Models中的類以及類的對象的操作,不需要寫任何SQL語句來和數(shù)據(jù)庫進行直接的交互。
編寫Models步驟:
1、在應用根目錄下創(chuàng)建models.py,并引入models模塊
2、創(chuàng)建類,繼承models.Model,該類即是一張數(shù)據(jù)表
3、在類中創(chuàng)建字段
字段創(chuàng)建:
1、數(shù)據(jù)表里的字段其實就是models.py中類的屬性(變量)
例如: name = models.CharField(max_length=100) # 發(fā)布會標題
Django中主要的數(shù)據(jù)類型:
編寫完Models,怎么把類同步到數(shù)據(jù)庫,生成數(shù)據(jù)表呢?
1、命令行中進入manage.py的同級目錄
2、執(zhí)行 python3 manage.py makemigrations app名(sign)(可選,如果不指定應用名,默認是該項目下的所有應用)
3、再執(zhí)行 python3 manage.py migrate,完成數(shù)據(jù)遷移
完成數(shù)據(jù)遷移后,Django會自動在sign/migrations目錄下生成移植文件
執(zhí)行python3 manage.py sqlmigrate 應用名 文件id(0001) 查看SQL語句.
一、使用MySQL數(shù)據(jù)庫:
Django 默認使用自帶的sqlite3數(shù)據(jù)庫,對各種數(shù)據(jù)庫提供了很好的支持,包括:PostgreSQL、MySQL、SQLite、Oracle。
Django 為這些數(shù)據(jù)庫提供了統(tǒng)一的調用API。 我們可以根據(jù)自己業(yè)務需求選擇不同的數(shù)據(jù)庫。
MySQL 是 Web 應用中最常用的數(shù)據(jù)庫
使用MySQL數(shù)據(jù)庫步驟:
1、如果使用的 Python2.x 版本,那么連接 MySQL 數(shù)據(jù)庫可以使用 MySQL-python。 但是,MySQL-python 只支持 Python2.x 版本,并在 2014 年 1 月之后就不再更新了,但這并不影響對該庫的使 用。目前 Django 默認使用的是該驅動。如果使用的是 Python3.x 版本的 Django,所以這里推薦使用 PyMySQL 驅動。
命令:python3 -m pip install PyMySQL
因為 Django 在連接 MySQL 數(shù)據(jù)庫時默認使用的是 MySQLdb 驅動,我們現(xiàn)在安裝的是 PyMySQL 驅動,如何讓 Django 通過 PyMySQL 來 連接 MySQL 數(shù)據(jù)庫呢?在.../guest/__init__.py 目錄下添加:
import pymysql
pymysql.install_as_MySQLdb()
2、setting.py文件中配置MySQL數(shù)據(jù)庫。
感謝各位的閱讀!關于django調用數(shù)據(jù)庫數(shù)據(jù)的方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!