溫馨提示×

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

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

代碼詳解django中數(shù)據(jù)庫(kù)設(shè)置

發(fā)布時(shí)間:2020-10-22 00:17:06 來(lái)源:腳本之家 閱讀:171 作者:laozhang 欄目:開(kāi)發(fā)技術(shù)

首先定義數(shù)據(jù)庫(kù)的表名和字段

啟動(dòng)mysql數(shù)據(jù)庫(kù) bash mysql.server start

安裝pymysql pip install pymysql

PyMySQL 是在 Python3.x 版本中用于連接 MySQL 服務(wù)器的一個(gè)庫(kù),Python2中則使用mysqldb。

在_init_.py文件中加入如下代碼:

import pymysql
pymysql.install_as_MySQLdb()

新建數(shù)據(jù)庫(kù)

mysql -u root -p 登錄root
show databases 顯示數(shù)據(jù)庫(kù)
create database mysite 創(chuàng)建數(shù)據(jù)庫(kù)

settings.py配置數(shù)據(jù)庫(kù):

1)django默認(rèn)使用的是sqlite數(shù)據(jù)庫(kù)
2)修改settings.py文件的DATABASES選項(xiàng)進(jìn)行數(shù)據(jù)庫(kù)的配置
3)設(shè)置想要使用的數(shù)據(jù)庫(kù)。比如mysql

DATABASES = {
'default': {
  'ENGINE': 'django.db.backends.mysql',
  'NAME': 'mysite',
  'USER': 'root',
  'PASSWORD': '12345678',
  'HOST': 'localhost',
  'PORT': '3306',
}
}

創(chuàng)建app

一個(gè)項(xiàng)目中可以創(chuàng)建多個(gè)app
使用命令 python manage.py startapp myApp,后生成myApp目錄以及相關(guān)文件。
admin.py 站點(diǎn)配置
models.py 定義模型
views.py 定義視圖

激活app

1)在settings.py文件中將app名稱myApp應(yīng)用加入到INSTALLED_APPS

INSTALLED_APPS = [


'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'myApp',
]

2)定義模型,一個(gè)數(shù)據(jù)庫(kù)表對(duì)應(yīng)一個(gè)模型。

在models.py中加入類似如下:

class Grades(models.Model):

gname = models.CharField(max_length=20)
gdate = models.DateTimeField()
ggirlnum = models.IntegerField()
gboynum = models.IntegerField()
isDelete = models.BooleanField(default=False)

ps:不用定義主鍵,后面會(huì)自動(dòng)生成。

3)在數(shù)據(jù)庫(kù)中生存數(shù)據(jù)庫(kù)表

python manage.py makemigrations
python manage.py migrate

這樣在數(shù)據(jù)庫(kù)中即生成了與models對(duì)應(yīng)的數(shù)據(jù)庫(kù)表,但是表的內(nèi)容是空的。

向AI問(wèn)一下細(xì)節(jié)

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

AI