Django框架简介:Django 是一个高效、功能丰富且安全的 Web 框架,非常适合快速开发高质量的 Web 应用
适用场景:Django 可用于开发各种类型的 Web 应用,例如内容管理系统(CMS)、社交媒体平台和电子商务网站等。许多大型网站(如 Instagram 和 Pinterest)都基于 Django 构建,因为它能够快速实现复杂功能并应对海量用户需求。
ps:本文章在完成课程期末作业为记录而写,如有不足之处欢迎指正
环境准备
1.基于pycharm自带的Django项目类型创建项目
本文章所使用的软件为pycharm2020.2.5,为了尽可能详细的展示过程中所过程中可能会遇到的难题,并提供解决思路我在此处选择创建一个全新的虚拟环境,选用的解释器是python3.9,对应路径如下图所示,接下来点击右下角create创建项目:
创建项目是弹出如下界面(Tip of the Day)每日建议,可以直接关闭(点击右下角close):
使用pip list命令查看我们当前虚拟环境下项目中所包含的库,由于在创建项目时选择的是Django选项,所以pycharm会自动帮我们下载最新的Django库5.2.3,并初步搭建好对应框架(对应代码视图左边的目录层级)
由于我在此作业中使用的数据库是mysql-5.7.31-winx64通过bing浏览器搜索结果查找MySQL与Django之间的版本对应关系,我们用不上最新版的Django,所以此处我们可以选择修改Django的对应版本号(修改为3.2.25)。
配置Django
1.使用(pip install django==3.2.25)代码在终端中运行
可以发现Django版本成功切换成3.2.25版本,由于此处是在虚拟环境中安装,所以不会影响其他项目对应虚拟环境的配置。
2.通过setting来切换(不建议)
由于这是对直接对python解释器来进行修改,盲目操作可能会导致后续发生一系列问题,比如其他原本可以运行的项目突然运行不了(直接对解释器进行修改导致其他项目原来所依赖的库发生变化,导致原来对应文件下的一些函数名发生迁移...此处仅提供一种解决思路)
依次点击左上角file->srttings->Project->Pyhotn interpreter
这是一个 PyCharm 的 Python 解释器设置界面,其中列出了项目的 Python 解释器所使用的库及其版本信息,点击左侧的加号可以对相应库进行增、删、改等操作(双击Django我们进入下图页面)。。。
勾选Specify version可以选择特定的版本号比如3.2.25...好了现在开始进行下一步操作吧
在Terminal中使用python manage.py startapp myApp代码创建应用得到如下图所示的层级目录!!!
可以看见对应文件已全部生成好,接下来我们在djangoHomework项目中对myApp应用进行注册
打开myApp中的apps文件根据“类名”进行注册
打开项目djangoHomework中的settings文件,由于我的应用文件名是myApp所以在注册时,在setting中INSTALLED_APPS中添加
再对setting中的DATABASES进行设置,确保程序可以连接到我们的数据库,但在此之间我们需要手动创建数据库,在终端打开MySQL并创建数据库Homework
修改settings文件中的配置由下图
修改为("name"参数对应索要链接的数据库中database的名称):
创建表:在models.py文件中,创建用户类:
接下来用Django命令生成数据表,进行数据库迁移操作
python manage.py makemigrations
python manage.py migrate
python manage.py makemigrations命令执行报错
代码执行报错,提示安装mysqlclient
此处给出俩个解决方法
1.安装mysqlclient
在虚拟环境终端执行pip install mysqlclient命令
提示安装成功,接下来继续执行python manage.py makemigrations和python manage.py migrate命令
没有报错并发现myApp目录下生成migrations目录,数据表创建成功,MySQL对应数据库下已生成对应表myapp_userinfo...,环境已初步搭建好。
2.另一种解决方式安装PyMySQL
如果 mysqlclient 在某些环境下安装困难,也可以考虑使用 PyMySQL
使用安装命令
并在项目的 `__init__.py` 文件中添加以下代码来注册 `PyMySQL`
也可以连接数据库
接下来使用python manage.py runserver启动程序,发现没有报错,据此所有准备工作都已完成!
2.基于Python项目创建Django项目
相较于pycharm自带的固定格式python项目需要先使用django-admin startproject + 项目名称来先创建Django项目如下图所示,部分命令需要进入对应成层级目录。
例如python manage.py startapp myApp命令,会提示无法找到对应文件,此时可以通过cd命令进入对应层级,在执行即可。其余的与前半段文章内容相近读者可以自行参考。