1.連接數(shù)據(jù)庫
web軟件對于數(shù)據(jù)庫的操作屬于重復(fù)的常規(guī)操作,故而Django將數(shù)據(jù)庫連接操作封裝到模塊中,只需要配置即可使用
2.修改settings中的DATABASES即可完成數(shù)據(jù)庫連接
將
DATABASES = {
'default': {
#修改最后一個sqlite3就可以了
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
修改為
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'mydatabase',
'USER': 'mydatabaseuser',
'PASSWORD': 'mypassword',
'HOST': '127.0.0.1',
'PORT': '3306',
#此處為數(shù)據(jù)庫端口號
}
}
注意:
========
python版本中連接的是pymysql
Django底層連接的是mysqldb模塊
一般都會用pymysql替代mysqldb
替換方式:
import pymysql
pymysql.install_as_MySQLdb()
========
即可
3.Django會將數(shù)據(jù)自動同步數(shù)據(jù)庫
執(zhí)行三個語句即可
python manage.py makemigrations 生成對應(yīng)數(shù)據(jù)庫的sql語句
python manage.py migrate 將生成的語句在數(shù)據(jù)庫執(zhí)行
python manage.py createsuperuser 設(shè)置管理員賬號密碼
python manage.py sqlmigrate app_name no 查看sql語句
4.ORM處理方式
.ORM:(Object Relation Mapping 對象關(guān)系映射),是一種操作方式,類似于MVC,將常規(guī)操作固化封裝,給項目提供可行方便的數(shù)據(jù)庫之間的操作。
>.函數(shù):
django.db.models.AutoField() 創(chuàng)建主鍵
django.db.models.CharField() 創(chuàng)建字符串
django.db.models.TextField() 長文本
django.db.models.BooleanField() 布爾型
等
5.命令語句
.在子站點的models.py中編寫如下程序塊
from django.db import models
#創(chuàng)建表Auter 字段如程序塊
class Auther(models.Model):
id = models.AutoField(primary_key=true)
name = models.CharField(max_length=100)
gender = models.IntegerField(default=0)
adress = models.TextField()
#寫完如上字段后命令行運行數(shù)據(jù)庫操作命令
python manage.py makemigrations
python manage.py migrate