溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Django中要怎么樣連接Mysql數(shù)據(jù)庫

發(fā)布時間:2020-08-13 13:51:38 來源:億速云 閱讀:197 作者:小新 欄目:編程語言

這篇文章主要介紹了Django中要怎么樣連接Mysql數(shù)據(jù)庫,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

處理用戶注冊請求、Django連接MysqL數(shù)據(jù)庫相關(guān)配置、數(shù)據(jù)庫遷移命令:

my_Dproject/app01/views.py    在views函數(shù)文件中添加register函數(shù),來處理用戶注冊的請求。

Django中要怎么樣連接Mysql數(shù)據(jù)庫

Tips:獲取get請求數(shù)據(jù)的方式跟POST請求完全一樣。

獲取到用戶注冊信息,接下來需要連接數(shù)據(jù)庫,拿到數(shù)據(jù)庫的用戶數(shù)據(jù)進行驗證,注冊的成功與否。

Django連接MySQL數(shù)據(jù)庫的方法:

my_Dproject/my_Dproject/settings.py    繼續(xù)回到settings配置文件中,來配置Django連接MySQL。

Django中要怎么樣連接Mysql數(shù)據(jù)庫

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'my_Dproject',
        'HOST': '127.0.0.1',
        'PORT': 3306,
        'USER': 'root',
        'PASSWORD': '123',
    }
}

Django中要怎么樣連接Mysql數(shù)據(jù)庫

還沒完,接著需要去項目的init文件中添加相關(guān)信息,告訴Django用MySQL數(shù)據(jù)庫連接數(shù)據(jù)庫就行。

my_Dproject/my_Dproject/__Init__.py中添加下面信息:

import pymysql
pymysql.install_as_MySQLdb()

(這里需要注意:__init__.py文件還在app01文件中有,也可以在app01中的init文件中添加,效果一樣。)

配置添加Django中orm的models文件

重點:Django的orm不能自動幫我們創(chuàng)建數(shù)據(jù)庫,但是可以自動幫我們創(chuàng)建表,同時一個Django項目就使用一個數(shù)據(jù)庫。

my_Dproject/app01/models.py  中添加映射表的相關(guān)類。

這里我們需要用到用戶數(shù)據(jù)表,所以創(chuàng)建一張User類來映射MySQL數(shù)據(jù)庫中的user用戶表。

class User(models.Model):
    id = models.AutoField(primary_key=True)
    name = models.CharField(max_length=32)
    password = models.CharField(max_length=16)

Django中要怎么樣連接Mysql數(shù)據(jù)庫

映射表的類創(chuàng)建完畢后,需要進行關(guān)鍵的2步【數(shù)據(jù)庫遷移命令】操作,才能創(chuàng)建出user表:

第一步:將數(shù)據(jù)庫變動記錄記錄到一個文件中:

在pycharm自帶的Terminal命令行中輸入:

python3 manage.py makemigrations

第二步:將數(shù)據(jù)庫變動同步到數(shù)據(jù)庫中:

python3 manage.py migrate

Django中要怎么樣連接Mysql數(shù)據(jù)庫

Django中要怎么樣連接Mysql數(shù)據(jù)庫

重點:

以后只要涉及到數(shù)據(jù)庫的一絲變動(這里主要說的是表結(jié)構(gòu)),要想讓變動生效一定要執(zhí)行這2步數(shù)據(jù)庫遷移(同步)命令?。?!

這里提一個小點:我們在測試時候如果遇到下面這種情況:

Django中要怎么樣連接Mysql數(shù)據(jù)庫

解決辦法是:在settings.py文件中注釋掉一行代碼:

Django中要怎么樣連接Mysql數(shù)據(jù)庫

感謝你能夠認真閱讀完這篇文章,希望小編分享Django中要怎么樣連接Mysql數(shù)據(jù)庫內(nèi)容對大家有幫助,同時也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學(xué)習(xí)!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI