Django是利用Python语言开发网站时的首选Web框架。本书循序渐进地介绍了Django 2.0中各个功能模块的实现与使用方法,并以“在线教育平台”为例,讲解了基于Django 2.0开发应用的实用技能。此外,本书还介绍了Django项目的上线部署方法以及在网站实际开发过程中常用的第三方功能模块。本书内容实用性强,案例丰富,侧重于实战,与新技术结合紧密,可综合提高读者的Python Web编程能力。
本书可作为计算机相关专业的教材,也适合刚接触或即将接触Django的开发者使用,还可供具有Django开发经验但还须进一步提升实战能力的读者学习参考。
1.系统全面地介绍 Django 体系
? (1)深入讲解 Django 三大核心,即模型、视图、模板;
? (2)使用 Django 快速制作在线教育平台;
? (3)学习并使用丰富的第三方应用;
? (4)配合 Linux 实践 Django 上线部署全过程。
2.丰富多样的教学资料
? (1)配套素材及示例代码;
? (2)每章课后作业及答案;
? (3)重难点内容视频讲解。
3.随时可测学习成果
? (1)每章提供“技能目标”,助力读者确定学习要点;
? (2)课后作业辅助读者巩固阶段性内容;
? (3)课工场题库助力在线测试。
肖睿,课工场创始人,北京大学教育学博士,北京大学软件学院特约讲师,北京大学学习科学实验室特约顾问。作为北大青鸟 Aptech 的联合创始人,历任学术总监、研究院院长、公司副总裁等核心岗位,拥有20多年的IT职业教育产品管理和企业管理经验。于2015年创办课工场,兼任总经理,旨在为大学生提供更可靠的 IT 就业教育及服务。
第 1章 Django基础 1
任务1.1 了解网站基础 2
1.1.1 网站的定义、组成及发展历程 3
1.1.2 网站的分类 4
1.1.3 网站的开发流程 7
任务1.2 初识Django 8
1.2.1 什么是Django 8
1.2.2 Django开发环境搭建 10
任务1.3 体验第 一个Django项目 15
1.3.1 创建项目 15
1.3.2 创建应用 16
1.3.3 输出“Hello World” 18
1.3.4 Django项目配置 19
本章作业 22
第 2章 模型与数据库 25
任务2.1 了解SQL基础语句的用途 26
2.1.1 插入数据 27
2.1.2 删除数据 27
2.1.3 修改数据 27
2.1.4 查询数据 27
任务2.2 掌握模型与数据库的使用方法 28
2.2.1 什么是ORM 28
2.2.2 构建模型 28
2.2.3 模型操作 32
2.2.4 数据表的关系 34
2.2.5 模型继承 38
本章作业 40
第3章 探究视图 41
任务3.1 了解视图的构建 42
3.1.1 定义视图 42
3.1.2 路由配置 44
3.1.3 HttpRequest与HttpResponse对象 46
3.1.4 上机训练 50
任务3.2 管理器Manager的使用 50
3.2.1 默认管理器对象objects 51
3.2.2 自定义管理器Manager 53
任务3.3 通用视图的使用 54
任务3.4 错误视图的使用 56
3.4.1 内置错误视图 56
3.4.2 自定义错误页面 57
本章作业 59
第4章 深入模板 61
任务4.1 初识模板 62
4.1.1 什么是Django模板 62
4.1.2 定义模板 64
任务4.2 模板的使用 66
4.2.1 注释 66
4.2.2 模板变量 66
4.2.3 模板标签 67
4.2.4 过滤器 73
4.2.5 上机训练 75
本章作业 76
第5章 admin后台系统 77
任务5.1 使用admin管理后台 78
5.1.1 初识admin管理后台 78
5.1.2 admin管理后台使用步骤 80
任务5.2 二次开发admin管理后台 84
5.2.1 列表展示设置 84
5.2.2 admin后台配置项 91
任务5.3 使用xadmin管理后台 92
5.3.1 xadmin安装 92
5.3.2 xadmin使用 93
5.3.3 xadmin配置 96
本章作业 98
第6章 高级应用 101
任务6.1 使用Auth认证系统 102
6.1.1 内置User实现用户管理 103
6.1.2 设置用户权限 108
6.1.3 设置用户组 109
任务6.2 缓存与状态管理在项目中的应用 110
6.2.1 Cache的使用 111
6.2.2 Session的使用 112
任务6.3 使用模型类进行高阶查询 115
6.3.1 Q对象 115
6.3.2 F对象 116
6.3.3 高级过滤 116
任务6.4 使用第三方应用快速开发 117
6.4.1 验证码captcha 118
6.4.2 调试工具debug-toolbar 121
本章作业 124
第7章 项目实战—制作在线教育平台 127
任务7.1 在线教育平台项目概述 128
7.1.1 需求概述 128
7.1.2 开发环境 131
7.1.3 覆盖技能点 131
任务7.2 搭建项目 131
7.2.1 项目创建 131
7.2.2 基础配置 133
7.2.3 模型类设计 135
任务7.3 开发功能模块 137
7.3.1 制作网站首页 137
7.3.2 制作课程详情页 138
7.3.3 制作课程章节页 140
7.3.4 制作机构中心页 141
7.3.5 制作机构课程页 142
7.3.6 制作机构讲师页 143
7.3.7 配置admin后台系统 143
第8章 Django项目上线部署 149
任务8 项目上线部署 150
8.1 虚拟机安装 150
8.2 升级Python 2.x到Python 3.x 152
8.3 项目上线配置 155
8.4 安装Django 156
8.5 安装uWSGI 157
8.6 安装Nginx 160