日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

ios django 连接mysql_Django---Django连接Mysql数据库

發(fā)布時間:2024/8/23 数据库 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ios django 连接mysql_Django---Django连接Mysql数据库 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

前面介紹了Django平臺的數(shù)據(jù)交互,這些數(shù)據(jù)都是在本地存放著,修改內(nèi)容或者重新啟動服務(wù),數(shù)據(jù)就消失了,如果我們把數(shù)據(jù)存放在數(shù)據(jù)庫中,不就保存了嗎?

Django數(shù)據(jù)庫

Django中自帶的也有數(shù)據(jù)庫(sqlite3),自帶的輕量級數(shù)據(jù)庫sqlite3,已經(jīng)完全夠了,當(dāng)然大家都很數(shù)據(jù)Mysql數(shù)據(jù)庫,我們也可以通過Django連接Mysql數(shù)據(jù)庫

連接Mysql數(shù)據(jù)庫

在文件settings,py文件下中找到以下配置信息,該信息為連接默認(rèn)數(shù)據(jù)庫(sqlite3)

#連接數(shù)據(jù)庫

DATABASES ={‘default‘: {‘ENGINE‘: ‘django.db.backends.sqlite3‘,‘NAME‘: os.path.join(BASE_DIR, ‘db.sqlite3‘),

}

}

如果想要連接Mysql數(shù)據(jù)庫,我們可以進行修改成以下參數(shù)

#配置MYsql數(shù)據(jù)庫

DATABASES ={‘default‘: {‘ENGINE‘: ‘django.db.backends.mysql‘,‘NAME‘: ‘test‘, #數(shù)據(jù)庫名稱,

‘HOST‘: ‘localhost‘, #主機地址

‘USER‘: ‘root‘, #數(shù)據(jù)庫用戶

‘PASSWORD‘: ‘821006052‘, #密碼

‘PORT‘: 3306 #mysql的端口默認(rèn)3306

}

}

數(shù)據(jù)庫已經(jīng)連接成功了。但是還需要安裝mysql插件mysqlclient

pip install mysqlclient

操作數(shù)據(jù)庫

在文件models.py下創(chuàng)建表名以及表字段

# model.py

#創(chuàng)建表名已經(jīng)表字段

from django.db importmodels#class名代表表名,models.Model固定寫法

classUser(models.Model):#username,password 表示創(chuàng)建字段名,長度為32

username = models.CharField(max_length=32)

password= models.CharField(max_length=32)

打開cmd,跳轉(zhuǎn)到項目目錄下執(zhí)行以下命令,同步數(shù)據(jù)庫

#同步數(shù)據(jù)庫python manage.py makemigrations

這個時候會看到項目中的migrations中自動生成了一個文件?0001_initial.py,?這個時候我們繼續(xù)執(zhí)行命令

# 創(chuàng)建數(shù)據(jù)庫表

python manage.py migrate

這個時候我們都已經(jīng)把數(shù)據(jù)庫全部創(chuàng)建完成了。

這個時候會創(chuàng)建一些Django自帶的表,如果不需要的話我們可以在sttings.py文件中進行進行屏幕

INSTALLED_APPS =[‘django.contrib.admin‘, #admin管理后臺站點

‘django.contrib.auth‘, #身份認(rèn)證系統(tǒng)

‘django.contrib.contenttypes‘, #內(nèi)容類型框架

‘django.contrib.sessions‘, #會話框架

‘django.contrib.messages‘, #消息框架

‘django.contrib.staticfiles‘, #靜態(tài)文件管理框架

‘Djtest‘, #項目應(yīng)用

]

添加數(shù)據(jù)到數(shù)據(jù)庫

前面工作已經(jīng)全部完成了,我們直接開始編寫代碼寫入數(shù)據(jù)庫中,這里還是使用上一篇數(shù)據(jù)交互的代碼完成。我們直接在視圖中進行修改代碼

#views.py

defindex(request):if request.method == ‘POST‘:

username= request.POST.get(‘username‘)

password= request.POST.get(‘password‘)#將數(shù)據(jù)保存到數(shù)據(jù)庫

models.User.objects.create(username=username,password=password)return render(request, ‘index.html‘, {‘data‘:username})

這個地方需要注意前面寫的html接收的內(nèi)容,然后再返回給用戶瀏覽器,這里修改了index.html文件

# index.html

安靜博客樂園歡迎您,{{data}}

最后工作了,啟動Django服務(wù),進入到對應(yīng)的地址,輸入用戶名和密碼,點擊提交

提交過后,來到我們的數(shù)據(jù)庫中,進行查看,數(shù)據(jù)是否提交(我這里輸入多次不同的數(shù)據(jù))

可以發(fā)現(xiàn)數(shù)據(jù)已經(jīng)全部都存到數(shù)據(jù)庫中了。這樣就可以把提交過的數(shù)據(jù)全部都保存在數(shù)據(jù)庫中,然而不會重啟服務(wù)器導(dǎo)致數(shù)據(jù)丟失了

其他數(shù)據(jù)庫連接信息配置

#連接 PostgreSQL

django.db.backends.postgresql#連接 mysql

django.db.backends.mysql#連接 sqlite

django.db.backends.sqlite3#連接 oracle

django.db.backends.oracle

總結(jié)

以上是生活随笔為你收集整理的ios django 连接mysql_Django---Django连接Mysql数据库的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。