Django中更改默認(rèn)數(shù)據(jù)庫(kù)為mysql的方法示例
Django中默認(rèn)使用sqlite3數(shù)據(jù)庫(kù),今天研究了下如何將它換成常見(jiàn)的mysql數(shù)據(jù)庫(kù)。
由于項(xiàng)目用得python3,而MySQLdb沒(méi)有支持python3的版本,如果使用python3.x版本時(shí),pip install MySQLdb時(shí)會(huì)報(bào)錯(cuò)。
后來(lái)通過(guò)谷歌發(fā)現(xiàn)可以使用pymysql替代MySQLdb
1 在項(xiàng)目根目錄下的__init__.py文件中加入如下代碼:
import pymysql pymysql.install_as_MySQLdb()
2 使用mysqlclient代替MySQLdb,安裝方式為:
pip install mysqlclient
3 更改項(xiàng)目setting.py中對(duì)數(shù)據(jù)庫(kù)的配置為:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'test',
'USER': 'username',
'PASSWORD': 'passwd',
'HOST': 'localhost',
'PORT': '3306'
}
}
4 最后通過(guò)python manage.py migrate命令,Django會(huì)在數(shù)據(jù)庫(kù)中自動(dòng)創(chuàng)建相應(yīng)的表
Operations to perform:
Apply all migrations: admin, auth, contenttypes, polls, sessions
Running migrations:
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
Applying admin.0003_logentry_add_action_flag_choices... OK
Applying contenttypes.0002_remove_content_type_name... OK
Applying auth.0002_alter_permission_name_max_length... OK
Applying auth.0003_alter_user_email_max_length... OK
Applying auth.0004_alter_user_username_opts... OK
Applying auth.0005_alter_user_last_login_null... OK
Applying auth.0006_require_contenttypes_0002... OK
Applying auth.0007_alter_validators_add_error_messages... OK
Applying auth.0008_alter_user_username_max_length... OK
Applying auth.0009_alter_user_last_name_max_length... OK
Applying polls.0001_initial... OK
Applying sessions.0001_initial... OK
5 在創(chuàng)建admin用戶時(shí),遇到了如下報(bào)錯(cuò)
python manage.py createsuperuser
Superuser creation skipped due to not running in a TTY. You can run `manage.py createsuperuser` in your project to create one manually.
后來(lái)查了一下,是因?yàn)槭褂昧薵it來(lái)執(zhí)行命令,切換到Windows自帶的命令行,可以解決該問(wèn)題!
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python實(shí)現(xiàn)模擬時(shí)鐘代碼推薦
本文給大家匯總介紹了下使用Python實(shí)現(xiàn)模擬時(shí)鐘的代碼,一共3個(gè)例子,后兩個(gè)是基于QT實(shí)現(xiàn),有需要的小伙伴可以參考下2015-11-11
把JSON數(shù)據(jù)格式轉(zhuǎn)換為Python的類對(duì)象方法詳解(兩種方法)
本文通過(guò)兩種方法給大家介紹了把JSON數(shù)據(jù)格式轉(zhuǎn)換為Python的類對(duì)象,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2019-06-06
詳解設(shè)計(jì)模式中的工廠方法模式在Python程序中的運(yùn)用
這篇文章主要介紹了設(shè)計(jì)模式中的工廠方法模式在Python程序中的運(yùn)用,工廠方法模式主張程序在設(shè)計(jì)時(shí)要可以根據(jù)不同的條件生成各種類的實(shí)例,需要的朋友可以參考下2016-03-03
Tensorflow中批量讀取數(shù)據(jù)的案列分析及TFRecord文件的打包與讀取
這篇文章主要介紹了Tensorflow中批量讀取數(shù)據(jù)的案列分析及TFRecord文件的打包與讀取,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06

