简介
Django是一种基于Python的web开发框架。它是基于MVC设计模式,通过借鉴MVC(Mole ,View,Controller)模式,产出了一种MTV(Model,Template,View)模式,这两种模式的区别就是,MTV 将 MVC 中的 Controlle r分成 Template 和 View 模块。
MVC 设计模式的请求与响应过程描述如下:
- 用户通过浏览器向服务器发起 request 请求,Controller 层接受请求后,同时向 Model 层和 View 发送指令;
- Mole 层根据指令与数据库交互并选择相应业务数据,然后将数据发送给 Controller 层;
- View 层接收到 Controller 的指令后,加载用户请求的页面,并将此页面发送给 Controller 层;
- Controller 层接收到 Model 层和 View层的数据后,将它们组织成响应格式发送给浏览器,浏览器通过解析后把页面展示出来。
MTC 设计模式的请求与响应过程描述如下:
- 用户通过浏览器对服务器发起 request 请求,服务器接收请求后,通过 View 的业务逻辑层进行分析,同时向 Model层和Template 层发送指令;
- Mole 层与数据库进行交互,将数据返回给 View 层;
- Template 层接收到指令后,调用相应的模板,并返回给 View 层;
- View层接收到模板与数据后,首先对模板进行渲染(即将相应的数据赋值给模板),然后组织成响应格式返回给浏览器,浏览器进行解析后并最终呈现给用户。
简单使用
查看是否安装
# 这个命令用于查查看自己是否安装Django,如果出现版本号则证明安装
python -m django --version
# 下面进行安装,version是你需要安装的版本号
Python -m pip install Django==version
#Django 版本 Python 版本
# 3.2 3.6, 3.7, 3.8, 3.9, 3.10 (在 3.2.9 中就已经加入了)
# 4.0 3.8,3.9,3.10
# 4.1 3.8,3.9,3.10,3.11(4.1.3 添加)
# 4.2 3.8、3.9、3.10、3.11
# 以上就是简单的安装,也可以参考官网进行安装:https://docs.djangoproject.com/zh-hans/3.2/intro/install/
创建一个Django项目(简单用法)
# 可以在终端执行这行命令,会在当前文件夹下面生产成一个名为mysite的文件夹,创建时要注意Django名称尽量是自己定义防止与Python和Django相关依赖包的名称发生冲突
django-admin startproject mysite # 其中mysite是我这个Django的名字,可以随意更换
# 创建完成之后会出现下面所示的文件:
# mysite/ Django项目名称,可以随意更换
# manage.py
# mysite/
# __init__.py # python 的初始化文件
# settings.py # 项目的配置文件,启动项目是的所有配置
# urls.py # 项目的主路由配置,http请求时,优先调用该文件
# asgi.py
# wsgi.py # Web服务网关的配置文件 django正式启动的时候,需要用到
# 运行命令:
python manage.py runserver '端口号' # 端口号可以自己指定
# ctrl + C 关闭服务
# 查询进程:
sudo lsof -i:'端口号' # 查询当前端口正在运行的进程
kill -9 '进程ID' # 关闭指定正在运行的id,带 LISTEN 的ID,正处于被监听状态的
# 出现报错
Error:That proy is already in use # 说明当前端口正在被占用
# 列出 django 的所有子命令
python manage.py
Settings.py文件
# 当前项目的配置文件:公有配置和自定义配置
# 配置格式:大写的配置项 = 'value'
# django 默认配置
BASE_DIR = 'XXXXXXXXXXX' # 表示当前项目的绝对路径
DEBUG = True/False # 两种模式,True:调试模式,检测到代码改动后,立刻重启服务,False表示当前项目在运行在生产环境中
ALLOWED_HOSTS = [] # 请求头 具体域名,不指定就为,127.0.0.1, ['*']所有host请求头都可以访问到
INSTALLED_APPS # 应用配置
ROOT_URLCONF # 主路由文件的配置
TEMPLATES # 模板配置
DATABASES # 数据配置