一 Django简介
Django发布于2005年,是当前 Python世界里最负盛名且成熟的网络框架。最初用 来制作在线新闻的Web站点。 Django是一个用 Python编写的开放源代码的Web应用框架(源代码是开源的,遵守BSD版权)。采用了MVC的框架模式,也有很多人把它称为MT(MTV)模式
Django官网地址:https://www.djangoproject.com/
Django版本:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3rHIrOgc-1634176149011)(https://static.djangoproject.com/img/release-roadmap.3c7ece4f31b3.png)]
备注:Django3.2LTS长期支持版本 :2021年09月最新版本3.2.7 支持时间:结束支持时间:2024年04月
二 Django的安装
2.1 环境要求
**操作系统:**Ubuntu16.04
Python版本:>=3.5
**Django版本:**3.2LTS版本
2.2 Django安装
国内镜像源
- 清华:https://pypi.tuna.tsinghua.edu.cn/simple
- 阿里云:http://mirrors.aliyun.com/pypi/simple/
- 中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
- 华中理工大学:http://pypi.hustunique.com/
- 山东理工大学:http://pypi.sdutlinux.org/
- 豆瓣:http://pypi.douban.com/simple/
临时更换镜像源方法:
pip3 install 库名 -i 镜像地址 例如:pip3 install numpy -i https://pypi.douban.com/simple/
需要一个虚拟开发环境
步骤如下:
1. 安装可以创建虚拟环境的支持包:
pip3 install virtualenv -i https://pypi.douban.com/simple/
2. 通过pip命令安装Django对应版本:例如:
pip3 install django==3.2.7 -i https://pypi.douban.com/simple/
可以通过手动安装
到Django官网下载对应版本:https://www.djangoproject.com/download/3.2.7/tarball/
然后解压,到解压⽬录下,打开虚拟开发环境,执⾏以下命令:
python -m pip3 install .
三 创建项目
1. 命令操作创建项目
1.1 创建基本项目
cd project # 切换目录
django-admin startproject hello #创建项目
1.2 项目目录结构
├── hello #项⽬⽬录
│ ├── __init__.py #包标志
│ ├── settings.py #项⽬配置⽂件
│ ├── urls.py #路由映射表
│ └── wsgi.py #wsgi接⼝
└── manage.py #项⽬管理命令
1.3 创建应用
一个Django项目中可以包含多个应用:
# 切换到对应目录
命令: python manage.py startapp 应⽤名称
实例: python manage.py startapp app
创建完成后目录结构:
创建项目后,项目的结构
├── App
│ ├── admin.py 站点管理
│ ├── apps.py 应⽤程序⾃身信息
│ ├── __init__.py
│ ├── migrations 数据迁移
│ │ └── __init__.py
│ ├── models.py 模型
│ ├── tests.py
│ └── views.py 视图响应函数
├── db.sqlite3 sqlite数据库
├── hello 项⽬
│ ├── doc.py
│ ├── __init__.py
│ ├── __pycache__
│ │ ├── __init__.cpython-36.pyc
│ │ ├── settings.cpython-36.pyc
│ │ ├── urls.cpython-36.pyc
│ │ └── wsgi.cpython-36.pyc
│ ├── settings.py 系统配置
│ ├── urls.py 路由映射表
│ └── wsgi.py wsgi协议
└── manage.py 项⽬管理命令
1.4 使用Pycharm创建Django项目
【注意】
本次操作版本Pycharm2021.2.2版本
步骤一 :打开Pycharm集成开发工具,点击New Project
按钮
第二步骤:选择对应的功能选项-填写对应参数,填写完毕后点击Create
按钮
第三步骤:项目创建成功
1.5 测试服务器启动
通过命令行启动
#命令:python manage.py runserver [ip:port]
python manage.py runserver
python manage.py runserver 0.0.0.0:9000
通过工具启动
启动成功
1.6 配置修改
修改settings.py文件
1 # 获取项目根目录路径
BASE_DIR = Path(__file__).resolve().parent.parent
2. # 用于签名加密使用
SECRET_KEY = 'django-insecure-0q%4al4(03g965vd$wi1(3e0_if9wlÆer)9ygd#t8=%e+^'
3. # 允许访问的主机列表 可以添加 "*" 用户都可以访问
ALLOWED_HOSTS = ['*']
4. # 安装应用配置 weixin_app.apps.WeixinAppConfig 创建的应用
INSTALLED_APPS = [...]
5. # 跟路由文件
ROOT_URLCONF = 'djangoProject.urls'
6. # 模板配置
TEMPLATES = [...]
7. # 项目的入口
WSGI_APPLICATION = 'djangoProject.wsgi.application'
8. # 数据库配置 -后续配置mysql数据库
DATABASES = {}
9. # 修改语言支持
LANGUAGE_CODE = 'zh-hans'
10. # 更为为国内时区
TIME_ZONE = 'Asia/shanghai'
11. # 是否使用国际标准时间-世界时 修改False - 时间相差 8小时
USE_TZ = False
12. # 静态资源的请求路径
STATIC_URL = '/static/'
1.7 重新运行
到此为⽌,我们已经搭建好项⽬的基本框架,但项⽬还没有实质性内容,下⾯将从视图函数开始给项⽬添加功能。
四 简单的视频函数
在django中view代表视图函数,接收⽤户的请求,进⾏处理然后返回html源代码给客户端。在框架中,我们可以在应⽤(app)的views.py中写⾃⼰的视图函数,进⾏相应的处理。视图函数只是⼀个普通的python函数,它的第⼀个参数必须是⼀个请求(request)对象,这是框架传⼊的,我们可以通过请求对象获取提交参数等内容。它的返回值必须是⼀个web响应对象,可以⽂本、html源代码、᯿定向、404等内容。下⾯我们写⼀个简单视图函数,返回“Hello,Python"
1. #在根路由加入视图函数,并view视图中创建index函数
path("",views.index,name = "index"), # name=“index”用户返回函数的时候使用
2. #创建视图函数
from django.http import HttpResponse
def index(request):
return HttpResponse("Hello Python 今天是星期二")
其中HttpResponse函数需要引⼊模块django.http,我们可以直接写HttpResponse,然后通过快捷键alt+enter,在下拉框中选择要导⼊的模块。
【注意】
window版本:alt+enter 代码飘红、飘⻩、查看定义、引⼊包都可以使⽤。Mac版本:option+enter快捷键
【注意】
Path对应有四个参数:
- 模式串:匹配用户请求路径的字符串(和fask一样)
- 视频函数:匹配上用户指定请求路径后调用的是视图函数名
- kwargs:可选参数,需要额外传递的参数,是一个字典
- 名称(nam)给路由命名,在代码中可以使用name进行反向解析(由name获取用户请求路劲)