计算机
类型
可以朗读
语音朗读
601千字
字数
2021-07-01
发行日期
展开全部
主编推荐语
本书以Django Web项目开发为主线,深入系统地介绍了Django 3在Web开发中的应用。
内容简介
本书从网站开发入门开始,逐步深入讲述Django框架的各功能要点,每个功能要点从源码角度分析,并在源码的基础上实现自定义的功能开发。还介绍了Django的第三方功能应用,如DRF框架开发API接口、生成网站验证码、站内搜索引擎、第三方网站实现账号注册、异步任务和定时任务、即时通信实现在线聊天。
本书提供了4个实战案例,包括信息反馈平台、博客系统、音乐网站平台、前后端分离与微服务架构,涵盖了网站的单体式开发、前后端分离和微服务开发,从单一的网站开发转变到网站架构设计开发。最后讲述Django的上线部署方案,分别讲述Django如何部署在Windows和Linux系统上。
本书内容丰富,技术新颖,注重实战,适合有一定Python基础的Web开发人员阅读,也可用作培训机构和大中专院校相关专业的教学参考书。
目录
- 版权信息
- 内容简介
- 前言
- 第1章 Django建站基础
- 1.1 网站的定义及组成
- 1.2 网站的分类
- 1.3 网站运行原理及开发流程
- 1.3.1 常用术语
- 1.3.2 网站的运行原理
- 1.3.3 网站的开发流程
- 1.3.4 任务划分
- 1.4 走进Django
- 1.5 安装Django
- 1.6 创建项目
- 1.7 PyCharm创建项目
- 1.8 开启Django Hello World
- 1.8.1 Django的操作指令
- 1.8.2 开启Hello World之旅
- 1.9 调试Django项目
- 1.9.1 PyCharm断点调试
- 1.9.2 调试异常
- 1.10 HTML、CSS和JavaScript
- 1.10.1 HTML
- 1.10.2 CSS
- 1.10.3 JavaScript
- 1.11 本章小结
- 第2章 Django配置信息
- 2.1 基本配置信息
- 2.2 资源文件配置
- 2.2.1 资源路由——STATIC_URL
- 2.2.2 资源集合——STATICFILES_DIRS
- 2.2.3 资源部署——STATIC_ROOT
- 2.2.4 媒体资源——MEDIA
- 2.3 模板配置
- 2.4 数据库配置
- 2.4.1 mysqlclient连接MySQL
- 2.4.2 pymysql连接MySQL
- 2.4.3 多个数据库的连接方式
- 2.4.4 使用配置文件动态连接数据库
- 2.4.5 通过SSH隧道远程连接MySQL
- 2.5 中间件
- 2.6 本章小结
- 第3章 初探路由
- 3.1 路由定义规则
- 3.1.1 Django 2以上版本路由定义
- 3.1.2 Django 1.X路由定义
- 3.1.3 路由变量的设置
- 3.1.4 正则表达式的路由定义
- 3.2 命名空间与路由命名
- 3.2.1 命名空间namespace
- 3.2.2 路由命名name
- 3.3 路由的使用方式
- 3.3.1 在模板中使用路由
- 3.3.2 反向解析reverse与resolve
- 3.3.3 路由重定向
- 3.4 本章小结
- 第4章 探究FBV视图
- 4.1 设置响应方式
- 4.1.1 返回响应内容
- 4.1.2 设置重定向
- 4.1.3 异常响应
- 4.1.4 文件下载功能
- 4.2 HTTP请求对象
- 4.2.1 获取请求信息
- 4.2.2 文件上传功能
- 4.2.3 Cookie实现反爬虫
- 4.2.4 请求头实现反爬虫
- 4.3 本章小结
- 第5章 探究CBV视图
- 5.1 数据显示视图
- 5.1.1 重定向视图RedirectView
- 5.1.2 基础视图TemplateView
- 5.1.3 列表视图ListView
- 5.1.4 详细视图DetailView
- 5.2 数据操作视图
- 5.2.1 表单视图FormView
- 5.2.2 新增视图CreateView
- 5.2.3 修改视图UpdateView
- 5.2.4 删除视图DeleteView
- 5.3 日期筛选视图
- 5.3.1 月份视图MonthArchiveView
- 5.3.2 周期视图WeekArchiveView
- 5.4 本章小结
- 第6章 深入模板
- 6.1 Django模板引擎
- 6.1.1 模板上下文
- 6.1.2 自定义标签
- 6.1.3 模板继承
- 6.1.4 自定义过滤器
- 6.2 Jinja2模板引擎
- 6.2.1 安装与配置
- 6.2.2 模板语法
- 6.2.3 自定义过滤器
- 6.3 本章小结
- 第7章 模型与数据库
- 7.1 模型定义与数据迁移
- 7.1.1 定义模型
- 7.1.2 开发个人的ORM框架
- 7.1.3 数据迁移
- 7.1.4 数据导入与导出
- 7.2 数据表关系
- 7.3 数据表操作
- 7.3.1 数据新增
- 7.3.2 数据修改
- 7.3.3 数据删除
- 7.3.4 数据查询
- 7.3.5 多表查询
- 7.3.6 执行SQL语句
- 7.3.7 数据库事务
- 7.4 多数据库的连接与使用
- 7.4.1 多数据库的连接
- 7.4.2 多数据库的使用
- 7.5 动态创建模型与数据表
- 7.6 MySQL分表功能
- 7.7 本章小结
- 第8章 表单与模型
- 8.1 初识表单
- 8.2 源码分析Form
- 8.3 源码分析ModelForm
- 8.4 视图里使用Form
- 8.5 视图里使用ModelForm
- 8.6 同一网页多个表单
- 8.7 一个表单多个按钮
- 8.8 表单的批量处理
- 8.9 多文件批量上存
- 8.10 本章小结
- 第9章 Admin后台系统
- 9.1 走进Admin
- 9.2 源码分析ModelAdmin
- 9.3 Admin首页设置
- 9.4 Admin的二次开发
- 9.4.1 函数get_readonly_fields()
- 9.4.2 设置字段样式
- 9.4.3 函数get_queryset()
- 9.4.4 函数formfield_for_foreignkey()
- 9.4.5 函数formfield_for_choice_field()
- 9.4.6 函数save_model()
- 9.4.7 数据批量操作
- 9.4.8 自定义Admin模板
- 9.4.9 自定义Admin后台系统
- 9.5 本章小结
- 第10章 Auth认证系统
- 10.1 内置User实现用户管理
- 10.2 发送邮件实现密码找回
- 10.3 模型User的扩展与使用
- 10.4 权限的设置与使用
- 10.5 自定义用户权限
- 10.6 设置网页的访问权限
- 10.7 用户组的设置与使用
- 10.8 本章小结
- 第11章 常用的Web应用程序
- 11.1 会话控制
- 11.1.1 会话的配置与操作
- 11.1.2 使用会话实现商品抢购
- 11.2 缓存机制
- 11.2.1 缓存的类型与配置
- 11.2.2 缓存的使用
- 11.3 CSRF防护
- 11.4 消息框架
- 11.4.1 源码分析消息框架
- 11.4.2 消息框架的使用
- 11.5 分页功能
- 11.5.1 源码分析分页功能
- 11.5.2 分页功能的使用
- 11.6 国际化和本地化
- 11.6.1 环境搭建与配置
- 11.6.2 设置国际化
- 11.6.3 设置本地化
- 11.7 单元测试
- 11.7.1 定义测试类
- 11.7.2 运行测试用例
- 11.8 自定义中间件
- 11.8.1 中间件的定义过程
- 11.8.2 中间件实现Cookie反爬虫
- 11.9 异步编程
- 11.9.1 使用多线程
- 11.9.2 启用ASGI服务
- 11.9.3 异步视图
- 11.9.4 异步与同步的转换
- 11.10 信号机制
- 11.10.1 内置信号
- 11.10.2 自定义信号
- 11.10.3 订单创建与取消
- 11.11 本章小结
- 第12章 第三方功能应用
- 12.1 Django Rest Framework框架
- 12.1.1 DRF的安装与配置
- 12.1.2 序列化类Serializer
- 12.1.3 模型序列化类ModelSerializer
- 12.1.4 序列化的嵌套使用
- 12.2 验证码生成与使用
- 12.2.1 Django Simple Captcha的安装与配置
- 12.2.2 使用验证码实现用户登录
- 12.3 站内搜索引擎
- 12.3.1 Django Haystack的安装与配置
- 12.3.2 使用搜索引擎实现产品搜索
- 12.4 第三方网站实现用户注册
- 12.4.1 Social-Auth-App-Django的安装与配置
- 12.4.2 微博账号实现用户注册
- 12.5 异步任务和定时任务
- 12.5.1 Celery的安装与配置
- 12.5.2 异步任务
- 12.5.3 定时任务
- 12.6 即时通信
- 12.6.1 Channels的安装与配置
- 12.6.2 Web在线聊天功能
- 12.7 本章小结
- 第13章 信息反馈平台的设计与实现
- 13.1 项目设计与配置
- 13.1.1 项目架构设计
- 13.1.2 MySQL搭建与配置
- 13.1.3 功能配置
- 13.1.4 数据库架构设计
- 13.2 程序功能开发
- 13.2.1 路由与视图函数
- 13.2.2 使用Jinja2编写模板文件
- 13.2.3 Admin后台系统
- 13.3 测试与运行
- 13.3.1 编写单元测试
- 13.3.2 运行与上线
- 13.4 本章小结
- 第14章 个人博客系统的设计与实现
- 14.1 项目设计与配置
- 14.1.1 项目架构设计
- 14.1.2 功能配置
- 14.1.3 数据表架构设计
- 14.1.4 定义路由列表
- 14.1.5 编写共用模板
- 14.2 注册与登录
- 14.3 博主资料信息
- 14.4 图片墙功能
- 14.5 留言板功能
- 14.6 文章列表
- 14.7 文章正文内容
- 14.8 Admin后台系统
- 14.8.1 模型的数据管理
- 14.8.2 自定义Admin的登录页面
- 14.8.3 Django CKEditor生成文章编辑器
- 14.9 测试与部署
- 14.9.1 测试业务逻辑
- 14.9.2 上线部署
- 14.10 本章小结
- 第15章 音乐网站平台的设计与实现
- 15.1 项目设计与配置
- 15.1.1 项目架构设计
- 15.1.2 功能配置
- 15.1.3 数据表架构设计
- 15.1.4 定义路由列表
- 15.1.5 编写共用模板
- 15.2 网站首页
- 15.3 歌曲排行榜
- 15.4 歌曲搜索
- 15.5 歌曲播放与下载
- 15.6 歌曲点评
- 15.7 注册与登录
- 15.8 用户中心
- 15.9 Admin后台系统
- 15.10 自定义异常页面
- 15.11 部署与运行
- 15.11.1 上线部署
- 15.11.2 网站试运行
- 15.12 本章小结
- 第16章 基于前后端分离与微服务架构的网站开发
- 16.1 Vue框架
- 16.1.1 Vue开发产品信息页
- 16.1.2 Vue发送AJAX请求
- 16.2 Django开发API接口
- 16.2.1 简化Django内置功能
- 16.2.2 设置跨域访问
- 16.2.3 使用路由视图开发API接口
- 16.2.4 DRF框架开发API接口
- 16.3 微服务架构
- 16.3.1 微服务实现原理
- 16.3.2 功能拆分
- 16.3.3 设计API网关
- 16.3.4 调试与运行
- 16.4 JWT认证
- 16.4.1 认识JWT
- 16.4.2 DRF的JWT
- 16.5 微服务注册与发现
- 16.5.1 常用的服务注册与发现框架
- 16.5.2 Consul的安装与接口
- 16.5.3 Django与Consul的交互
- 16.5.4 服务的运行与部署
- 16.5.5 服务的负载均衡
- 16.6 本章小结
- 第17章 Django项目上线部署
- 17.1 基于Windows部署Django
- 17.1.1 安装IIS服务器
- 17.1.2 创建项目站点
- 17.1.3 配置静态资源
- 17.2 基于Linux部署Django
- 17.2.1 安装Linux虚拟机
- 17.2.2 安装Python 3
- 17.2.3 部署uWSGI服务器
- 17.2.4 安装Nginx部署项目
- 17.3 本章小结
- 附录A Django面试题
- 附录B Django资源列表
展开全部
出版方
清华大学出版社
清华大学出版社成立于1980年6月,是由教育部主管、清华大学主办的综合出版单位。植根于“清华”这座久负盛名的高等学府,秉承清华人“自强不息,厚德载物”的人文精神,清华大学出版社在短短二十多年的时间里,迅速成长起来。清华大学出版社始终坚持弘扬科技文化产业、服务科教兴国战略的出版方向,把出版高等学校教学用书和科技图书作为主要任务,并为促进学术交流、繁荣出版事业设立了多项出版基金,逐渐形成了以出版高水平的教材和学术专著为主的鲜明特色,在教育出版领域树立了强势品牌。