Python3.6+Django2.2+MySQL8.0

概述

本文是搭建Django+mysql开发环境的学习笔记,主要是为了方便自己后期查找而记录的开发环境搭建过程,毕竟年事已高,很多东西用过就忘了。这是自己第一次写博客,也是自己首次接触Django,肯定会有很多疏漏或谬论,万望各位大侠批评指正。

开发环境

PyCharm2018.3 ,Python3.6 , Django2.2 , MySQL8.0社区版。本文采用Python3.6,官网下载安装即可。PyCharm是Python的IDE,有免费的社区版,也有收费的专业版,专业版破解安装可自行查找。

搭建python虚拟环境

为不同python项目搭建不同的虚拟环境,本文使用virtualenv创建虚拟环境。
(1)首先创建一个保存虚拟环境的目录d:/django
(2)在该目录下创建名为webapp的虚拟环境,运行命令:virtualenv webapp
(3)转至webapp下的Scripts目录下,运行命令激活该虚拟环境:activate
(4)接着安装Django,运行命令:
pip install django(直接这样安装的话会安装Django当前最新版本,
若要指定版本pip install django=版本号)
(5)接着安装数据库驱动程序,python3的mysql驱动为pymysql,运行命令:pip install pymysql
至此本文用于Django开发的python虚拟环境已搭建完成。

安装mysql8.0社区版

MySQL企业版、社区版之间的区别可在官网查看相关信息。
社区版是免费的,官网能下载的是一zip个压缩包,本文在Windows10中安装,直接下载此压缩包。
(1)将zip文件解压至mysql安装目录,将其bin目录添加至系统环境变量path中
(2)然后在安装目录下新建my.ini,内容为:
[mysql]
default-character-set=utf8
[mysqld]
port = 3306
basedir=G:\Install_Applications\Program Files\mysql-8.0.11
datadir=G:\Install_Applications\Program Files\mysql-8.0.11\data
max_connections=200
character-set-server=utf8
default-storage-engine=INNODB
(3)运行命令mysqld install,安装mysql
(4)运行命令 mysqld --initialize,初始化mysql
(5)运行命令net start mysql,启动mysql
(6)运行命令mysql -uroot -p,登录mysql数据库,此时需要密码,该密码为初始化时自动生成,需要到mysql安装目录下的data目录下查找扩展名为.err的文件,打开该文件找出“A temporary password is generated for root@localhost:随机密码”,将随机密码部分复制,粘贴至命令窗口回车,登录数据库
(7)运行命令ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘新密码’,(将‘新密码’改为自己的密码后运行)
(8)重新登录时即可用自己的密码。
(9)可用Navicat等可视化工具连接mysql,创建一个自己的数据库Djangodb
至此mysql8.0社区版已安装完成。

Django连接MySQL

下述内容和本文各类环境应有密切关系,不一定适用于所有情况。所以请一定注意之前描述过的各类环境版本。
(python3.6+Django2.2+MySQL8.0社区版+pycharm2018.3)
(1)在pycharm中创建Django项目,将虚拟环境指定到前面搭建的虚拟环境d:/django/webapp/Scripts/python.exe
(2)在__init__.py中导入mysql驱动:
import pymysql
pymysql.install_as_MySQLdb()
(3)在settings.py中修改数据库信息
DATABASES = {
‘default’: {
‘ENGINE’: ‘django.db.backends.mysql’,
‘NAME’: ‘数据库名’,
‘USER’:‘用户名’,
‘PASSWORD’:‘你自己的密码’,
‘HOST’:‘localhost’,
‘PORT’:‘3306’
}
}
(4)将虚拟环境目录E:\Django\webapp\Lib\site-packages\django\db\backends\mysql中的base.py中的下面的内容注释掉
if version < (1, 3, 13):
raise ImproperlyConfigured(‘mysqlclient 1.3.13 or newer is required; you have %s.’ % Database.version)
()将虚拟环境目录E:\Django\webapp\Lib\site-packages\django\db\backends\mysql中的operations.py中的下面的语句中出现的decode改为encode
query = query.encode(errors=‘replace’)
(5)运行pycharm菜单tools下的run manage.py task
(6)运行makemigrations
(7)运行migrate
至此Django连接mysql完成,并创建好了Django依赖的数据表文件。

载入HTML页面

(1)在pycharm的Django项目的teamplates文件夹下新建HTML文件,设计好自己的首页内容,文件命名为index.html
(2)在pycharm的Django项目的根目录下新建static\css两层目录,在css目录下新建style.css文件定义页面样式
(3)在index.html中导入上述样式,在head标签中加入
(4)在项目根目录下新建message目录,在该目录下新建views.py
from django.shortcuts import render
def getindex(request):
return render(request,‘index.html’)
(5)在urls.py中加入
from message.views import getindex
urlpatterns = [
path(‘index’,getindex),
]
(6)在settings.py中加入
TEMPLATES_DIRS=[os.path.join(BASE_DIR,‘templates’),]
STATICFILES_DIRS=[os.path.join(BASE_DIR,‘static’),]
(7)运行Django项目,在浏览器中输入http://127.0.0.1:8000/index,即可访问到自己设计的页面
至此载入HTML页面全部完成。

结束语

整个搭建过程完全是依赖本文描述的环境进行的,不一定适用于所有情况,若对您的工作造成困扰请一定排查各类软件版本之间的兼容性,我自己完成这个环境搭建也是查阅了很多前辈撰写的博客,在版本兼容方面也是踩了不少坑,希望和我一样的初学者要耐心细致,少走弯路,希望自己的博客对初学者有所帮助。首次在CSDN写博客,排版有点乱,内容有点多,重点不突出,是个简单的操作流程记录,欢迎大家批评指正!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值