DJANGO 5 WEB应用开发实战
- ISBN:9787302661832
- 装帧:平装-胶订
- 册数:暂无
- 重量:暂无
- 开本:其他
- 页数:544
- 出版时间:2024-05-01
- 条形码:9787302661832 ; 978-7-302-66183-2
本书特色
这本全面介绍Django Web应用开发的技术书籍,是一本既适合初学者也适合有经验的开发者的绝佳学习资源。
首先,该书以*新的Django 5和Python 3.x为版本,确保了内容的时效性和技术的前沿性。它从零基础出发,逐步深入到Django 5 Web应用开发的各个方面,非常适合那些希望从基础开始学习并逐渐掌握高级技能的读者。
其次,全书突出实战,图例丰富,代码注释详尽,这种实践导向的教学方法能够确保读者在阅读过程中不仅理解理论知识,还能够通过动手实践来加深理解和记忆。书中提供的两个完整的网站开发项目,更是让读者有机会将所学知识应用于实际项目中,提高学习的实用性和效率。
再者,本书还介绍了当前流行的前后端分离和微服务架构技术,以及Web项目的上线部署,这些内容无疑将为读者提供更为全面的技术视角,帮助他们更好地适应和应对现代Web开发的各种挑战。
*后,作者在Web开发领域工作超过10年的经验,为本书的内容增添了权威性和实用性。资深作者的深厚背景保证了书籍内容的专业性和前沿性,同时也意味着读者可以直接从业内专家那里学习到*实用的知识和技能。
总之,无论你是初学者还是有经验的开发者,只要你希望学习或提升Django Web应用开发技能,这本书都将是你宝贵的参考资料。它不仅能够帮助你从零开始学习Django 5和Python 3.x,还能够让你在Web开发领域达到一个新的高度。
内容简介
《Django 5 Web应用开发实战》集Django架站基础、项目实践、开发经验于一体,是一本从零基础到精通Django Web企业级开发技术的实战指南。《Django 5 Web应用开发实战》内容以Python 3.x和Django 5版本为基础,从Django 5构建项目开始,逐步深入讲述Django框架的各项功能要点,每个功能要点从源码角度分析,并在源码的基础上实现自定义的功能开发。还介绍了Django的第三方功能应用,如DRF框架开发API接口、生成网站验证码、站内搜索引擎、第三方网站实现账号注册、异步任务和定时任务、即时通信实现在线聊天,同时介绍了当前流行的前后端分离模式和微服务架构网站的开发,《Django 5 Web应用开发实战》还提供了两个完整的Web实战案例:博客系统和音乐网站平台,从中读者可以学习了解网站开发的全流程,*后介绍了Django项目的上线部署。 《Django 5 Web应用开发实战》注重案例教学,讲解深入浅出,非常易于上手,适合有一定Python基础的开发人员和在校学生学习,也可以用作培训机构和大中专院校Web项目开发的教学实践用书。
目录
1.1 Django 5的新特性 1
1.2 安装Django 5 4
1.3 创建项目 4
1.4 PyCharm创建项目 6
1.5 初试Django 5 7
1.5.1 Django的操作指令 8
1.5.2 开启Hello World之旅 9
1.6 调试Django项目 11
1.6.1 PyCharm断点调试 11
1.6.2 调试异常 13
1.7 本章小结 15
第 2 章 配置Django项目 16
2.1 基本配置信息 16
2.2 资源文件配置 18
2.2.1 资源路由——STATIC_URL 18
2.2.2 资源集合——STATICFILES_DIRS 19
2.2.3 资源部署——STATIC_ROOT 20
2.2.4 媒体资源——MEDIA 20
2.3 模板配置 21
2.4 数据库配置 22
2.4.1 mysqlclient连接MySQL 22
2.4.2 pymysql连接MySQL 24
2.4.3 多个数据库的连接方式 24
2.4.4 使用配置文件动态连接数据库 25
2.4.5 通过SSH隧道远程连接MySQL 27
2.5 中间件 29
2.6 本章小结 31
第 3 章 路由的编写规则与使用 32
3.1 路由定义规则 32
3.1.1 Django的路由定义 32
3.1.2 路由变量的设置 34
3.1.3 正则表达式的路由定义 36
3.2 命名空间与路由命名 37
3.2.1 命名空间namespace 37
3.2.2 路由命名name 39
3.3 路由的使用方式 40
3.3.1 在模板中使用路由 40
3.3.2 反向解析reverse与resolve 43
3.3.3 路由重定向 46
3.4 本章小结 47
第 4 章 简单直观的FBV视图 49
4.1 设置响应方式 49
4.1.1 返回响应内容 49
4.1.2 设置重定向 52
4.1.3 异常响应 54
4.1.4 文件下载功能 57
4.2 HTTP请求对象 60
4.2.1 获取请求信息 60
4.2.2 文件上传功能 64
4.2.3 Cookie实现反爬虫 68
4.2.4 请求头实现反爬虫 74
4.3 本章小结 77
第 5 章 更现代的CBV视图 78
5.1 数据显示视图 78
5.1.1 重定向视图RedirectView 78
5.1.2 基础视图TemplateView 80
5.1.3 列表视图ListView 83
5.1.4 详细视图DetailView 87
5.2 数据操作视图 89
5.2.1 表单视图FormView 90
5.2.2 新增视图CreateView 92
5.2.3 修改视图UpdateView 94
5.2.4 删除视图DeleteView 96
5.3 日期筛选视图 98
5.3.1 月份视图MonthArchiveView 100
5.3.2 周期视图WeekArchiveView 105
5.4 本章小结 107
第 6 章 深入理解模板 108
6.1 Django模板引擎 108
6.1.1 模板上下文 108
6.1.2 自定义标签 110
6.1.3 模板继承 113
6.1.4 自定义过滤器 115
6.2 Jinja2模板引擎 119
6.2.1 安装与配置 120
6.2.2 模板语法 123
6.2.3 自定义过滤器 125
6.3 本章小结 126
第 7 章 模型与数据库 127
7.1 模型定义与数据迁移 127
7.1.1 定义模型 127
7.1.2 开发个人的ORM框架 131
7.1.3 数据迁移 134
7.1.4 数据导入与导出 137
7.2 数据表关系 138
7.3 数据表操作 142
7.3.1 数据新增 143
7.3.2 数据修改 145
7.3.3 数据删除 146
7.3.4 数据查询 147
7.3.5 多表查询 150
7.3.6 执行SQL语句 154
7.3.7 数据库事务 156
7.4 多数据库的连接与使用 158
7.4.1 多数据库的连接 158
7.4.2 多数据库的使用 161
7.5 动态创建模型与数据表 163
7.6 MySQL分表功能 165
7.7 本章小结 169
第 8 章 表单与模型 170
8.1 初识表单 170
8.2 源码分析Form 173
8.3 源码分析ModelForm 180
8.4 在视图里使用Form 184
8.5 在视图里使用ModelForm 186
8.6 同一网页多个表单 188
8.7 一个表单多个按钮 191
8.8 表单的批量处理 192
8.9 多文件批量上传 196
8.10 本章小结 202
第 9 章 Admin后台系统 203
9.1 走进Admin 203
9.2 源码分析ModelAdmin 206
9.3 Admin首页设置 211
9.4 Admin的二次开发 212
9.4.1 函数get_readonly_fields() 213
9.4.2 设置字段样式 214
9.4.3 函数get_queryset() 215
9.4.4 函数formfield_for_foreignkey() 216
9.4.5 函数formfield_for_choice_field() 217
9.4.6 函数save_model() 218
9.4.7 数据批量操作 219
9.4.8 自定义Admin模板 220
9.4.9 自定义Admin后台系统 222
9.5 本章小结 227
第 10 章 Auth认证系统 228
10.1 内置User实现用户管理 228
10.2 发送邮件实现密码找回 236
10.3 模型User的扩展与使用 241
10.4 权限的设置与使用 248
10.5 自定义用户权限 250
10.6 设置网页的访问权限 251
10.7 用户组的设置与使用 257
10.8 本章小结 260
第 11 章 优化网站性能的Web程序 261
11.1 会话控制 261
11.1.1 会话的配置与操作 261
11.1.2 使用会话实现商品抢购 264
11.2 缓存机制 269
11.2.1 缓存的类型与配置 270
11.2.2 缓存的使用 272
11.3 CSRF防护 275
11.4 消息框架 278
11.4.1 源码分析消息框架 278
11.4.2 消息框架的使用 279
11.5 分页功能 283
11.5.1 源码分析分页功能 283
11.5.2 分页功能的使用 286
11.6 国际化和本地化 289
11.6.1 环境搭建与配置 290
11.6.2 设置国际化 291
11.6.3 设置本地化 292
11.7 单元测试 294
11.7.1 定义测试类 294
11.7.2 运行测试用例 300
11.8 自定义中间件 301
11.8.1 中间件的定义过程 301
11.8.2 中间件实现Cookie反爬虫 305
11.9 异步编程 307
11.9.1 使用多线程 307
11.9.2 启用ASGI服务 310
11.9.3 异步视图 310
11.9.4 异步与同步的转换 313
11.10 信号机制 314
11.10.1 内置信号 314
11.10.2 自定义信号 317
11.10.3 订单的创建与取消 320
11.11 本章小结 323
第 12 章 扩展网站功能的第三方应用 324
12.1 Django Rest Framework框架 324
12.1.1 DRF的安装与配置 324
12.1.2 序列化类Serializer 326
12.1.3 模型序列化类ModelSerializer 330
12.1.4 序列化的嵌套使用 332
12.2 验证码生成与使用 335
12.2.1 Django Simple Captcha的安装与配置 336
12.2.2 使用验证码实现用户登录 338
12.3 站内搜索引擎 342
12.3.1 Django Haystack的安装与配置 342
12.3.2 使用搜索引擎实现产品搜索 345
12.4 第三方网站实现用户注册 349
12.4.1 Social-Auth-App-Django的安装与配置 350
12.4.2 微博账号实现用户注册 353
12.5 异步任务和定时任务 355
12.5.1 Celery的安装与配置 355
12.5.2 异步任务 357
12.5.3 定时任务 359
12.6 即时通信——在线聊天 361
12.6.1 Channels的安装与配置 362
12.6.2 Web在线聊天功能 365
12.7 本章小结 368
第 13 章 博客系统的设计与实现 370
13.1 项目设计与配置 370
13.1.1 项目架构设计 373
13.1.2 功能配置 374
13.1.3 数据表架构设计 376
13.1.4 定义路由列表 379
13.1.5 编写共用模板 379
13.2 注册与登录 382
13.3 博主资料信息 387
13.4 图片墙功能 388
13.5 留言板功能 391
13.6 文章列表 394
13.7 文章正文内容 397
13.8 Admin后台系统 400
13.8.1 模型的数据管理 401
13.8.2 自定义Admin的登录页面 404
13.8.3 Django CKEditor生成文章编辑器 406
13.9 测试与部署 409
13.9.1 测试业务逻辑 409
13.9.2 上线部署 413
13.10 本章小结 414
第 14 章 音乐网站平台的设计与实现 415
14.1 项目设计与配置 415
14.1.1 项目架构设计 419
14.1.2 功能配置 420
14.1.3 数据表架构设计 422
14.1.4 定义路由列表 425
14.1.5 编写共用模板 426
14.2 网站首页 427
14.3 歌曲排行榜 432
14.4 歌曲搜索 436
14.5 歌曲播放与下载 440
14.6 歌曲点评 446
14.7 注册与登录 451
14.8 用户中心 455
14.9 Admin后台系统 459
14.10 自定义异常页面 461
14.11 部署与运行 463
14.11.1 上线部署 463
14.11.2 网站试运行 464
14.12 本章小结 465
第 15 章 基于前后端分离与微服务架构的网站开发 466
15.1 Vue开发用户界面 466
15.1.1 Vue开发产品信息页 466
15.1.2 Vue发送AJAX请求 469
15.2 Django开发API接口 470
15.2.1 简化Django内置功能 470
15.2.2 设置跨域访问 471
15.2.3 使用路由视图开发API接口 473
15.2.4 DRF框架开发API接口 475
15.3 微服务架构 476
15.3.1 微服务实现原理 477
15.3.2 功能拆分 479
15.3.3 设计API网关 483
15.3.4 调试与运行 485
15.4 JWT认证 486
15.4.1 认识JWT 487
15.4.2 DRF的JWT 487
15.5 微服务注册与发现 495
15.5.1 常用的服务注册与发现框架 495
15.5.2 Consul的安装与接口 496
15.5.3 Django与Consul的交互 499
15.5.4 服务的运行与部署 505
15.5.5 服务的负载均衡 508
15.5.6 Django与Consul部署配置 508
15.6 本章小结 510
第 16 章 项目上线部署 511
16.1 基于Windows的项目部署 511
16.1.1 安装IIS服务器 511
16.1.2 创建项目站点 512
16.1.3 配置静态资源 514
16.2 基于Docker的项目部署 515
16.2.1 安装Docker 515
16.2.2 Docker常用指令 517
16.2.3 安装MySQL 520
16.2.4 使用Docker Compose部署 523
16.3 本章小结 530
作者简介
黄永祥
架构师,资深软件开发工程师,拥有10年以上一线大型Web项目开发经验,尤其擅长Go和Python语言,对相关技术架构、工具和框架,如Gin、Flask、Django等架轻就熟。已出版《实战Python网络爬虫》《精通Python自动化编程》《Django Vue.js商城项目实战》等书籍。
-
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
全图解零基础word excel ppt 应用教程
¥12.0¥48.0 -
机器学习
¥59.4¥108.0 -
深度学习的数学
¥43.5¥69.0 -
智能硬件项目教程:基于ARDUINO(第2版)
¥37.7¥65.0 -
硅谷之火-人与计算机的未来
¥14.3¥39.8 -
元启发式算法与背包问题研究
¥38.2¥49.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥77.4¥109.0 -
UG NX 12.0数控编程
¥24.8¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
界面交互设计理论研究
¥30.8¥56.0 -
UN NX 12.0多轴数控编程案例教程
¥25.8¥38.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
明解C语言:实践篇
¥62.9¥89.8 -
Linux服务器架设实战(Linux典藏大系)
¥84.5¥119.0 -
PREMIERE PRO 2023全面精通:视频剪辑+颜色调整+转场特效+字幕制作+案例实战
¥69.3¥99.0