首先定義數(shù)據(jù)庫的表名和字段
啟動mysql數(shù)據(jù)庫 bash mysql.server start
安裝pymysql pip install pymysql
PyMySQL 是在 Python3.x 版本中用于連接 MySQL 服務(wù)器的一個庫,Python2中則使用mysqldb。
在_init_.py文件中加入如下代碼:
import pymysql
pymysql.install_as_MySQLdb()
新建數(shù)據(jù)庫
mysql -u root -p 登錄root
show databases 顯示數(shù)據(jù)庫
create database mysite 創(chuàng)建數(shù)據(jù)庫
settings.py配置數(shù)據(jù)庫:
1)django默認(rèn)使用的是sqlite數(shù)據(jù)庫
2)修改settings.py文件的DATABASES選項(xiàng)進(jìn)行數(shù)據(jù)庫的配置
3)設(shè)置想要使用的數(shù)據(jù)庫。比如mysql
1
2
3
4
5
6
7
8
9
10
|
DATABASES = { 'default' : { 'ENGINE' : 'django.db.backends.mysql' , 'NAME' : 'mysite' , 'USER' : 'root' , 'PASSWORD' : '12345678' , 'HOST' : 'localhost' , 'PORT' : '3306' , } } |
創(chuàng)建app
一個項(xiàng)目中可以創(chuàng)建多個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
1
|
INSTALLED_APPS = [<p><br> 'django.contrib.admin' ,<br> 'django.contrib.auth' ,<br> 'django.contrib.contenttypes' ,<br> 'django.contrib.sessions' ,<br> 'django.contrib.messages' ,<br> 'django.contrib.staticfiles' ,<br> 'myApp' ,<br>]</p> |
2)定義模型,一個數(shù)據(jù)庫表對應(yīng)一個模型。
在models.py中加入類似如下:
class Grades(models.Model):
1
2
3
4
5
|
gname = models.CharField(max_length=20) gdate = models.DateTimeField() ggirlnum = models.IntegerField() gboynum = models.IntegerField() isDelete = models.BooleanField( default =False) |
ps:不用定義主鍵,后面會自動生成。
3)在數(shù)據(jù)庫中生存數(shù)據(jù)庫表
python manage.py makemigrations
python manage.py migrate
這樣在數(shù)據(jù)庫中即生成了與models對應(yīng)的數(shù)據(jù)庫表,但是表的內(nèi)容是空的。