Django 3 Web应用开发从零开始学(视频教学版)
作者: 刘亮亮 王金柱
出版社:清华大学出版社 2021-07-01
简介:本书详解Django框架的用法,精选简单、实用和功能流行的Django代码示例,帮助读者掌握Django框架及其相关技术栈的开发。全书讲解清晰、通俗易懂、重点突出、示例丰富、代码精练,基本涵盖Django框架的应用开发技术,可以帮助读者快速掌握Django框架的开发方法。本书配套示例源码、课件与教学视频。 全书共分13章,内容包括Django框架基础与环境搭建、框架常用配置、模型、视图与路由、模板、表单、后台管理、异常、测试、认证系统、安全与国际化,以及常用Web应用工具等。另外,为了突出项目实战的特点,本书还讲解了基于Django框架开发的2个实战项目,可以帮助读者进一步掌握Django应用的开发流程。 本书适合Web应用开发初学者快速掌握Django框架,以及系统设计人员提高设计水平,也适合高等院校、中职学校和培训机构计算机及相关专业的师生教学参考。【目录】第1章 Django框架基础与环境搭建 11.1 认识Django框架 11.1.1 诞生与发展 11.1.2 MTV设计原理 21.1.3 Django框架的View视图展示机制 31.1.4 Django框架的用户操作流程 41.1.5 Django框架的主要特点 61.2 搭建Django开发环境 61.2.1 安装Python语言环境 61.2.2 安装Django框架 101.3 开发个Django框架应用程序 131.3.1 通过命令行构建Django应用 131.3.2 通过PyCharm开发Django应用 151.3.3 添加代码并测试Django应用 181.4 本章小结 19第2章 Django框架常用配置 202.1 应用的配置文件settings.py 202.2 应用的基础路径 212.3 应用的启动模式 222.4 应用的站点访问权限 222.5 应用的App配置 222.6 应用的中间件配置 232.7 应用的模板配置 242.8 应用的数据库配置 242.9 应用的根级路由配置 262.10 应用的语言配置 262.11 应用的时区配置 272.12 应用的静态文件配置 272.13 本章小结 27第3章 Django框架模型 283.1 认识模型 283.1.1 模型的作用 283.1.2 Django模型与ORM 293.1.3 Django模型与MySQL 293.2 模型使用入门 303.2.1 定义模型 303.2.2 设计Django模型代码 313.2.3 使用Django模型 323.3 Django模型字段 323.3.1 字段的类型 323.3.2 字段的选项 333.3.3 关联关系字段—外键 363.3.4 关联关系字段—一对一关系 373.3.5 关联关系字段—多对多关系 383.3.6 自定义模型字段 403.4 Meta类 413.5 Django模型属性与方法 423.5.1 模型属性 423.5.2 模型方法 423.5.3 重写之前定义的模型方法 433.6 Django模型继承 453.6.1 什么是模型继承 453.6.2 抽象基类 453.6.3 Meta继承 463.6.4 related_name和related_query_name属性 493.6.5 多表继承 513.6.6 Meta和多表继承 523.6.7 继承与反向关系 533.6.8 代理模型 543.6.9 代理模型继承和未托管模型 563.6.10 多重继承 563.7 通过包管理模型 583.8 本章小结 58第4章 Django框架视图与路由 594.1 Django框架视图的概念 594.2 URL路由配置 604.2.1 什么是URL路由基础 604.2.2 Django如何处理请求 614.2.3 PATH路径转换器 634.2.4 使用正则表达式 644.2.5 URLconf在什么上查找 654.2.6 指定视图参数的默认值 664.2.7 包含其他的URLconf模块 674.2.8 传递额外参数给视图函数 684.2.9 反向解析 704.2.10 命名空间 724.3 视图函数 754.3.1 什么是视图函数 754.3.2 简单的视图函数 764.3.3 返回错误视图 794.3.4 直接返回状态码视图 824.3.5 HTTP 404异常视图 864.3.6 自定义错误页面 904.3.7 异步视图初步 924.4 快捷函数 934.4.1 什么是快捷函数 934.4.2 render()快捷函数 934.4.3 redirect()快捷函数 954.4.4 get_object_or_404()快捷函数 974.4.5 get_list_or_404()快捷函数 994.5 视图装饰器 1004.5.1 允许HTTP方法 1004.5.2 gzip_page()方法 1014.5.3 其他装饰器 1014.6 内置视图 1014.6.1 serve视图文件 1024.6.2 404错误视图 1034.6.3 500错误视图 1044.6.4 403错误视图 1044.6.5 400错误视图 1054.7 请求与响应对象 1064.7.1 HTTP信息传递的根本 1064.7.2 请求对象 1064.7.3 查询字典对象 1084.7.4 响应对象 1084.7.5 JsonResponse对象 1094.7.6 StreamingHttpResponse对象 1104.7.7 FileResponse对象 1114.8 模板响应对象 1114.8.1 HttpResponse对象 1114.8.2 SimpleTemplateResponse对象 1114.8.3 TemplateResponse对象 1124.8.4 使用SimpleTemplateResponse和TemplateResponse 1144.9 实现文件上传 1144.10 本章小结 116第5章 Django框架模板 1175.1 Django框架模板基础 1175.2 配置模板引擎 1185.2.1 添加模板引擎支持 1185.2.2 模板引擎用法 1195.2.3 内置后端 1225.2.4 自定义后端 1245.2.5 自定义模板引擎的集成调试 1255.3 模板引擎语法 1265.3.1 模板引擎语法基础 1265.3.2 变量 1265.3.3 标签 1315.3.4 过滤器 1395.3.5 算术运算 1455.3.6 特殊的标签和过滤器 1555.3.7 注释 1565.4 自定义模板标签和过滤器 1565.4.1 前置配置基础 1565.4.2 自定义模板过滤器 1585.4.3 自定义模板标签 1615.5 本章小结 173第6章 Django框架表单 1746.1 Django框架表单基础 1746.1.1 HTML表单 1746.1.2 HTTP方法:GET和POST 1756.1.3 Django在表单中的角色 1766.1.4 Form类 1766.1.5 实例化、处理和渲染表单 1766.1.6 创建一个表单 1776.2 使用Django框架表单 1776.2.1 使用Form类构建表单 1776.2.2 视图处理 1786.2.3 模板处理 1806.2.4 提交模板 1806.2.5 测试表单应用 1816.3 详解Django Form类 1826.3.1 模型与Form类 1826.3.2 绑定的和未绑定的表单实例 1836.3.3 表单字段与Widget控件 1836.3.4 使用表单模板 1896.3.5 手动渲染表单字段 1956.3.6 渲染表单错误信息 1976.3.7 遍历表单字段 1996.3.8 可复用的表单模板 2006.4 本章小结 202第7章 Django框架后台管理 2037.1 创建后台管理员账户 2037.2 登录后台模块 2057.3 管理自定义模型 2067.4 管理复杂模型 2097.5 定制后台管理模型 2137.6 注册装饰器 2197.7 本章小结 220第8章 Django框架异常管理与自动化测试 2218.1 Django框架异常处理 2218.1.1 URL Resolver exceptions 2238.1.2 数据库异常 2238.2 Django框架自动化测试 2248.2.1 自动化测试概述 2248.2.2 编写和运行自动化测试 2248.2.3 数据库自动化测试 2278.3 Django框架测试工具 2318.3.1 使用测试工具模拟发送GET请求 2328.3.2 使用测试工具模拟发送POST请求 2348.4 本章小结 236第9章 用户Auth认证系统 2379.1 用户Auth认证系统介绍 2379.2 安装用户Auth认证模块 2389.3 使用Django身份验证系统 2389.3.1 用户对象介绍 2389.3.2 创建用户对象 2399.3.3 创建超级用户 2399.3.4 修改密码 2399.3.5 验证用户 2409.3.6 默认权限 2419.3.7 用户组 2419.3.8 权限与授权 2419.3.9 Web请求中的身份验证 2429.3.10 在管理员中管理用户 2429.4 本章小结 242第10章 Django安全与国际化 24310.1 Django框架安全 24310.1.1 安全问题概述 24310.1.2 点击劫持保护 24510.1.3 跨站点请求伪造CSRF保护 24510.1.4 登录加密 24610.1.5 保护SECRET_KEY 24610.1.6 登录加密安全中间件 24610.2 Django国际化和本地化 24710.2.1 国际化与本地化概述 24710.2.2 国际化 24810.2.3 本地化 24910.3 本章小结 249第11章 常用的Web应用程序工具 25011.1 Django缓存 25011.1.1 缓存的由来 25011.1.2 设置缓存 25111.1.3 数据库缓存 25211.2 Django日志 25411.2.1 Logger 25411.2.2 Handler 25411.2.3 过滤器 25511.2.4 Formatter 25511.2.5 使用日志记录 25511.3 发送邮件 26011.4 分页 26211.5 消息框架 26311.6 序列化 26311.7 会话 26411.8 静态文件管理 26411.9 数据验证 26511.10 本章小结 265第12章 Django框架实战1—投票应用 26612.1 构建投票应用项目架构 26612.1.1 创建投票项目 26612.1.2 创建投票应用 26812.2 模型和Admin站点定义 27112.2.1 数据库配置 27112.2.2 创建模型 27212.2.3 激活模型 27312.2.4 添加数据 27512.2.5 模型自定义方法 27812.2.6 管理后台站点 27912.3 视图与模板 28212.3.1 定义视图函数 28312.3.2 使用模板优化默认视图 28412.3.3 去除模板中的URL硬编码 28612.3.4 为URL模块添加命名空间 28812.3.5 使用模板优化detail视图 28912.4 表单与通用视图 29012.4.1 编写表单 29012.4.2 添加vote视图路由 29112.4.3 定义vote视图函数 29212.4.4 定义results视图函数 29312.4.5 定义results模板 29412.4.6 添加results视图路由 29412.5 加入静态文件 29612.6 本章小结 296第13章 Django框架实战2—个人博客应用 29713.1 构建博客应用项目 29713.2 定义模型和Admin站点 29913.3 编写博客视图、表单和模板 30213.3.1 列表索引视图与模板 30213.3.2 详情视图与模板 30413.3.3 编辑视图、表单与模板 30613.4 加入静态文件 30813.5 本章小结 308