题 50
2.5实验 50
第3章开发工具入门 52
3.1Python 52
3.2PyCharm代码开发工具 55
3.2.1PyCharm简介及安装 55
3.2.2基本使用功能 59
3.3MySQL数据库 63
3.3.1MySQL数据库简介及安装 63
3.3.2驱动安装 69
3.4Django 72
3.4.1初识Django 72
3.4.2安装Django 73
3.4.3Django设计概述 74
3.5建立第一个项目 76
3.5.1创建项目 76
3.5.2显示自定义内容 79
3.6初识Admin 81
3.7配置文件 84
3.8习题 89
3.9实验 90
第4章模型 91
4.1初识模型 91
4.1.1模型实现原理 91
4.1.2创建模型 92
4.2字段操作 98
4.2.1常用字段 98
4.2.2关联关系型字段 101
4.2.3字段参数 108
4.2.4返回字段值 111
4.3模型扩展功能 111
4.3.1元数据 112
4.3.2模型类继承 115
4.3.3包管理模型 117
4.4数据库基本操作 118
4.4.1新增记录 118
4.4.2查询记录 120
4.4.3修改记录 126
4.4.4删除记录 127
4.5数据库高级操作 128
4.5.1一对一关联表操作 128
4.5.2一对多关联表操作 129
4.5.3多对多关联表操作 131
4.5.4SQL语句执行 133
4.6习题 135
4.7实验 135
第5章视图 137
5.1URL路由 137
5.1.1Django处理一个请求 137
5.1.2URL转发 139
5.1.3路由变量的设置 141
5.1.4通过正则表达式进行路由设置 142
5.1.5路由命名和命名空间 143
5.1.6路由反向解析 147
5.2视图函数 149
5.2.1视图函数定义 149
5.2.2render函数返回响应 151
5.2.3视图重定向 152
5.2.4错误提示视图 153
5.2.5HttpRequest对象 157
5.2.6HttpResponse对象 161
5.2.7文件上传 164
5.2.8文件下载 167
5.3视图类 170
5.3.1内置显示视图 170
5.3.2内置编辑视图 181
5.3.3内置日期视图 192
5.4视图与数据库事务 198
5.5习题 202
5.6实验 203
第6章模板 204
6.1初识模板 204
6.1.1模板配置 204
6.1.2调用模板 206
6.2Django默认模板引擎 207
6.2.1模板上下文 208
6.2.2模板标签 210
6.2.3自定义标签 213
6.2.4过滤器 215
6.2.5自动HTML转义 218
6.2.6模板继承 220
6.3Jinja2模板引擎 222
6.3.1初识Jinja2模板引擎 222
6.3.2模板语法 226
6.4习题 230
6.5实验 231
第7章表单 232
7.1初识表单 232
7.2Form表单 234
7.2.1创建Form表单 234
7.2.2表单字段 237
7.2.3小控件 240
7.2.4表单模板 243
7.3模型表单 246
7.3.1创建模型表单 246
7.3.2将模型字段转换为表单字段 249
7.4习题 251
7.5实验 252
第8章Admin 253
8.1深入理解Admin 253
8.1.1使用中文界面 253
8.1.2应用后端管理 254
8.2ModelAdmin 261
8.2.1ModelAdmin属性 261
8.2.2ModelAdmin方法 264
8.2.3ModelAdmin资产 269
8.3AdminSite模板 271
8.3.1使用Admin模板原理 271
8.3.2定制Admin模板 274
8.4习题 276
8.5实验 276
第9章用户认证系统 278
9.1初识用户认证 278
9.1.1内置功能 278
9.1.2运行基础 281
9.2用户对象 282
9.2.1内置User模型使用基础 282
9.2.2内置功能应用案例 284
9.2.3扩展User 290
9.3权限与认证 294
9.4在视图中认证用户 297
9.4.1LoginView 297
9.4.2LogoutView 300
9.5习题 302
9.6实验 303
第10章其他常用Web功能 304
10.1Ajax 304
10.1.1Ajax使用基础 304
10.1.2Ajax使用案例 306
10.2会话 309
10.2.1会话配置与使用 309
10.2.2会话使用案例 313
10.3日志 315
10.3.1日志对象与配置 315
10.3.2日志使用案例 317
10.4缓存 320
10.4.1配置缓存 321
10.4.2缓存使用案例 323
10.5分页 325
10.5.1分页器类 325
10.5.2分页案例 326
10.6习题 329
10.7实验 330
第11章DjangoRestFramework 331
11.1前后端分离 331
11.1.1前后端分离原理 331
11.1.2RESTful 332
11.2安装及配置 334
11.3序列化器 337
11.3.1序列化器对象 338
11.3.2序列化类Serializer 339
11.3.3模型序列化类ModelSerializer 343
11.3.4处理嵌套对象 346
11.3.5反序列化 348
11.4验证和保存 349
11.5习题 352
11.6实验 353
第二部分“三酷猫”网上教育服务系统实战项目
第12章项目整体设计及示例 356
12.1任务分工 356
12.2需求获取及分析 357
12.2.1整体需求 358
12.2.2服务功能需求 359
12.3系统设计 360
12.4实战结果 363
12.4.1项目启动环境搭建 363
12.4.2前后端项目实现效果 364
12.5前后端分离示例 366
12.5.1前后端项目建立 366
12.5.2让界面更加漂亮 372
12.6习题 376
12.7实验 376
第13章后端功能实现 378
13.1后端框架搭建 378
13.1.1创建项目 378
13.1.2基础配置 379
13.1.3模型定义 382
13.1.4路由设计 383
13.1.5自定义组件开发 385
13.2后端模块设计框架 387
13.2.1模块设计思路 387
13.2.2模型实现 389
13.2.3模型序列化 391
13.2.4视图实现 391
13.2.5Admin注册模型 392
13.2.6后端内容实现 393
13.3后端模块实现 393
13.3.1热点新闻模块 393
13.3.2操作日志模块 397
13.3.3课程管理模块 399
13.3.4教师管理模块 403
13.3.5商品管理模块 407
13.3.6网站统计模块 409
13.3.7报名咨询模块 413
13.4习题 416
13.5实验 416
第14章前端功能实现 418
14.1前端框架搭建 418
14.1.1创建项目 418
14.1.2配置文件 421
14.1.3路由文件 421
14.2前端功能模块设计 424
14.2.1模块设计思路 424
14.2.2首页框架设计 425
14.3前端功能模块实现 438
14.3.1校区栏目 438
14.3.2热点新闻栏目 443
14.3.3教师栏目 446
14.3.4课程栏目 449
14.3.5商品栏目 452
14.3.6前端访问记录 455
14.3.7报名咨询栏目 456
14.4习题 461
14.5实验 461
第15章安全功能及措施 463
15.1网站防攻击设计 463
15.1.1防XSS攻击 463
15.1.2防SQL攻击 464
15.1.3防CSRF攻击 465
15.1.4防点击劫持攻击 467
15.1.5防Host头攻击 468
15.2数据加密 468
15.2.1为什么需要对数据加密 468
15.2.2前后端分离数据加密案例 470
15.3文件上传安全处理 474
15.4其他安全措施 475
15.5习题 475
15.6实验 476
第16章测试及部署 477
16.1项目测试 477
16.1.1测试基础 477
16.1.2测试用例 479
16.2项目部署前置准备工作 481
16.2.1前端代码打包 481
16.2.2安装部署项检查 482
16.2.3后端建立静态资源目录 485
16.3在Windows下部署 485
16.3.1安装IIS 486
16.3.2配置Web站点 488
16.4在Linux下部署 492
16.4.1安装Python 493
16.4.2安装应用系统 495
16.4.3安装及配置Nginx 497
16.5对域名等的支持 498
16.6习题 498
16.7实验 499
附录AVue.js使用介绍 500
附录BJinja2过滤器 525
附录CModelAdmin属性清单 530
附录DModelAdmin方法清单 534
附录E赠送代码使用清单 538
附录F前后端项目常用命令汇总 542
后记 545