最近在学习django,记录下自己搭建历程。
一、搭建环境
操作系统环境: linux centos7
python版本:3.6.1
mysql 版本:5.6(django 默认使用sqlite)
二、安装django
1、python安装请参考:https://www.cnblogs.com/kimyeee/p/7250560.html
2、Django 下载地址:https://www.djangoproject.com/download/
可以看到目前最新的版本是2.2,直接使用命令安装
pip3 install Django==2.2
3、检查安装是否成功
>>>
import
django
>>> django.VERSION
(2, 2, 0,
'final'
, 0)
Django 配置MySQL数据库
在settings.py中配置
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # 数据库引擎 'NAME': 'mydb', # 你要存储数据的库名,事先要创建之 'USER': 'root', # 数据库用户名 'PASSWORD': '1234', # 密码 'HOST': 'localhost', # 主机 'PORT': '3306', # 数据库使用的端口 } }
数据库结构迁移
Python3不支持MySQLdb,可用pymysql代替。
1.首先,在Python虚拟环境下安装pymysql:pip3 install pymysql。
2.然后,在项目文件夹下的_init_.py添加如下代码即可。
import pymysql pymysql.install_as_MySQLdb()
3.再者,在项目文件夹中执行数据库迁移命令:
python3 manage.py makemigrations python3 manage.py migrate
搭建Django2.0+Python3+MySQL5.6时同步数据库时报错:
django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.3 or newer is required; you have 0.7.11.None
解决办法:
找到Python安装路劲下的Python36-32\Lib\site-packages\django\db\backends\mysql\base.py文件
将文件中的如下代码注释
if version < (1, 3, 3):
raise ImproperlyConfigured("mysqlclient 1.3.3 or newer is required; you have %s" % Database.__version__)
重新在项目manage.py路劲下执行如下命令即可
python3 manage.py makemigrations
python3 manage.py migrate
在settings.py中配置
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # 数据库引擎 'NAME': 'mydb', # 你要存储数据的库名,事先要创建之 'USER': 'root', # 数据库用户名 'PASSWORD': '1234', # 密码 'HOST': 'localhost', # 主机 'PORT': '3306', # 数据库使用的端口 } }
数据库结构迁移
Python3不支持MySQLdb,可用pymysql代替。
1.首先,在Python虚拟环境下安装pymysql:pip3 install pymysql。
2.然后,在项目文件夹下的_init_.py添加如下代码即可。
import pymysql pymysql.install_as_MySQLdb()
3.再者,在项目文件夹中执行数据库迁移命令:
python3 manage.py makemigrations python3 manage.py migrate