在开始介绍前后端各自模块和原理前,介绍下上篇遗留的部分细节。如下
后端配置数据库,前端子工程独立调试、后端独立调试,前后端打包调试,打包部署。
一、后端子工程配置MYSQL数据库,那就先安装MySQL。
小技巧,如果安装的数据库过多,推荐使用navicat工具,
记住MySQL的用户名和密码,默认情况下用户名为:“root”,密码就是前面安装的时候设置的:“root”。
1、在后端工程文件的settings.py文件中配置MySQL数据库的相关信息:
DATABASES = {
'default': {
#'ENGINE': 'django.db.backends.sqlite3',
#'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), 注释掉默认sqlite3的配置信息
'ENGINE': 'django.db.backends.mysql',
'NAME': 'MYSQL',
'USER': 'root',
'PASSWORD': '123456',
'HOST': 'localhost',
'PORT': '3306', 添加本地MySQL的配置信息
}
}
2、Django连接MySQL时默认使用MySQLdb驱动,但Python3不支持MySQLdb,python3通过pymysql来驱动MySQL,因此我们必须要将MySQL驱动设置为pymysql。
怎么设置呢?设置前是不是需要在当前工程目录下安装pymysql?
在terminal下输入:pip install pymysql 等待安装结束。
在当前子工程文件夹下打开_init_.py添加如下代码即可:
import pymysql
pymysql.install_as_MySQLdb()
3、执行数据库迁移
在项目manage.py路劲下执行如下命令即可:
python manage.py makemigrations
python manage.py migrate
如果没有报错,表示数据库连接成功。
4、遇到的问题
本人在运行如上命令时遇报错,使用python manage.py runserver 命令调试,出现如下现象:
网上找了好多解决问题,比如:https://blog.csdn.net/weixin_45476498/article/details/100098297
我在这里按照命令行提示和博客思路,注释掉了虚拟环境下python的base.py的if语句,成功!
python 3.8.0版本,django版本:3.0.3
二、后端子工程独立调式
Ctrl+C退出,后端运行结果显示在http://127.0.0.1:0000/
直接使用run/dubug当然也没问题。
三、前端子工程独立运行调式
在命令行进入到前端子工程文件下,运行pm run dev或cnpm run dev
运行成功后,前端子工程的结果显示在http://localhost:8080
这就是前后端分析架构。
四、前后端打包
回到工程总文件路径下,在命令行输入:npm run build
然后:python manage.py runserver
即可看到我们的项目结果。