Django开发入门与项目实战pdf下载pdf下载

Django开发入门与项目实战百度网盘pdf下载

作者:
简介:本篇主要提供Django开发入门与项目实战pdf下载
出版社:电子工业出版社
出版时间:2021-01
pdf下载价格:9.00¥


预览


内容介绍

编辑推荐

社区交流平台及图书管理系统两大Python Web开发实战案例

全流程讲解Django Web各大组件,依次击破技术难点

凝聚6年一线大厂开发经验,带你领略前沿开发技巧

5年研发授课综合经验,深入底层构建原理,全方位解析重点难点

由浅入深,涵盖基础案例到大型项目,让你稳步提升


内容简介

本书重点阐述了Python Web开发框架Django在企业开发中的应用,从Web基础知识的铺垫,到Django框架的基本使用,以及与Web相关的各种功能组件的使用,都进行了全面的讲解,再配合项目实战,让读者全面学习并掌握Django框架各个方面的细节操作,并能在第一时间上手企业项目开发。本书适合编程新手、有一定经验的开发人员以及资深开发人员使用。对于编程新手来说,这是一本不可多得的教程,深入浅出的讲解能让你以最快的速度了解并上手Django框架并参与到项目开发中;对于有经验的开发人员以及资深开发人员来说,这是一本操作手册,能最大限度地辅助你进行开发,提高开发效率。

作者简介

牟文斌,拥有多年的互联网软件开发经验和教学经验。2010年以来,曾供职于阿里、腾讯、亚信联创等一线研发公司。后转型软件开发职业培训,供职于一线教育平台,参与Python、Java及大前端课程的研发和授课。

精彩书评

孙静伟 云创动力教育生态服务中心创始人

非常不错的一本书,如果要推荐Python Web方向的教程类、教材类资源的话,这本书绝对是你不容错过的资料,从Django系统组件层面的讲解,到项目的迭代开发,业务模型的层层深入,让你快速上手并掌握Django框架。

蔡京琛 海图信息科技有限公司创始人兼CTO

Web领域发展很快,尤其是近些年Python方向是一个非常热门的发展方向,在热点的引导下公司采用Python的技术栈是一个必然的趋势,Django在Python Web应用领域非常重要,但是相关的学习资料和文档并不是十分完善,这本书对于Django中多个组件的全面性兼顾得非常好,既是一本教程类书,也是类似API的资料,值得拥有。

刘建宏 西安鸥鹏互联科技 教学总监

如果说在Web方向又要保证知识体系完整性、又能兼顾应用性和可操作性的话,这本书都已经做到了,是学习和开发不可多得的一本书。

李想 笃学教育 总经理

做教育有些年头了,所以对各种书籍教材什么的,挺看重细节的,这本书在这方面做的非常好,不论是源代码还是举例说明,都能照顾到不同技术深度的读者,让读者在轻松愉快的气氛中完成技术学习,你的技术栏目的书架上可以有这本书。

丁琴 上海师悦信息科技有限公司 前端技术总监

我本身是做前端开发的,现在的前端开发对于后端也是需要学习的,这本书带给我的感受是后端也是很简单的吆,相信我,坚持看完它,你的收获不仅仅是技术,还有前后端结合开发经验,非常喜欢的一本书。


目录

第1篇 开发工具及框架概述
第1章 Django概述 2
1.1 Web基础 2
1.1.1 Web发展 2
1.1.2 网络协议架构 3
1.1.3 应用软件架构 4
1.1.4 第一个Web程序 6
1.2 Django简介 7
1.2.1 MVC和MVT 8
1.2.2 Django 2.x新特性 10
1.2.3 Django的安装 12
1.2.4 安装验证 13
1.3 入门程序开发 13
1.3.1 创建项目 14
1.3.2 数据库同步 14
1.3.3 创建管理用户 15
1.3.4 访问测试 15
1.4 项目实战:博客开发 17
1.4.1 项目概述 17
1.4.2 项目创建初始化 17
1.4.3 数据模型定义 18
1.4.4 数据库同步配置 19
1.4.5 后台管理配置 20
1.4.6 项目基本配置 22
1.4.7 添加网页模板 24
1.4.8 视图处理函数 26
1.4.9 路由配置关联 27
1.4.10 软件运行测试 29
1.5 本章小结 30

第2章 Django数据模型与数据库 31
2.1 项目中的数据模型 31
2.1.1 模型类 31
2.1.2 字段限定规则 33
2.1.3 属性字段类型 36
2.1.4 索引操作 42
2.1.5 元数据选项 43
2.2 数据库处理 47
2.2.1 数据库连接 47
2.2.2 模型数据操作命令 50
2.2.3 数据库同步问题简述 53
2.2.4 数据模型增删改查 54
2.3 数据模型关联处理 56
2.3.1 什么是模型关联 56
2.3.2 一对多关联 57
2.3.3 一对一关联 60
2.3.4 多对多关联 62
2.3.5 自关联 64
2.4 数据查询操作 65
2.4.1 模型数据基本查询 65
2.4.2 模型数据条件查询 67
2.4.3 Q、F对象 68
2.4.4 模型操作关联查询 70
2.4.5 自定义SQL语句查询 71
2.5 数据库事务管理 72
2.5.1 Django中的事务管理 72
2.5.2 事务管理操作 73
2.6 本章小结 74

第3章 视图模板 75
3.1 视图模板概述 75
3.2 路由 76
3.2.1 路由概述 76
3.2.2 路由对象 77
3.2.3 路由级联包含 78
3.2.4 路由中的正则匹配 79
3.2.5 路由传递位置参数 80
3.2.6 路由路径转换器 82
3.2.7 路由反向解析 84
3.2.8 路由指定错误页面 85
3.3 视图处理函数 88
3.3.1 视图处理函数的声明和规范 88
3.3.2 数据响应快捷处理方式 89
3.3.3 视图相关装饰器 93
3.3.4 请求对象和响应对象 94
3.3.5 案例开发 97
3.4 模板语法 104
3.4.1 模板语法基础 105
3.4.2 常见的模板标签操作 106
3.4.3 常见的过滤器操作 109
3.4.4 模板高级操作:模板继承 112
3.4.5 案例开发:博客网页数据渲染 115
3.5 静态文件处理 121
3.5.1 项目开发架构规范 121
3.5.2 静态文件配置 122
3.5.3 子项目的静态文件配置 124
3.5.4 案例开发:完善博客项目的网页视图 126
3.6 自定义模板标签和模板过滤器 128
3.6.1 项目准备 129
3.6.2 自定义模板过滤器 130
3.6.3 自定义模板标签 132
3.7 本章小结 135

第4章 表单处理 136
4.1 表单概述 136
4.1.1 普通表单处理 137
4.1.2 GET参数处理 139
4.1.3 POST参数处理 140
4.1.4 跨站请求伪造 142
4.1.5 文件上传 144
4.2 基于Form的表单封装 149
4.2.1 表单基本操作 149
4.2.2 限定属性和字段描述 152
4.2.3 表单视图操作 156
4.3 基于ModelForm的高级表单 160
4.3.1 ModelForm概述 160
4.3.2 ModelForm字段属性 162
4.3.3 Meta属性选项 164
4.3.4 ModelForm中的数据提交 166
4.3.5 ModelForm中的数据初始化 167
4.3.6 ModelForm中的类型关联关系 168
4.3.7 表单实例工厂 170
4.3.8 自定义验证规则 171
4.4 项目实例:表单重构 172
4.4.1 用户注册表单重构 173
4.4.2 用户登录表单重构 176
4.4.3 用户信息表单重构 179
4.4.4 发表文章表单重构 180
4.4.5 表单重构注意问题 183
4.5 本章小结 183

第2篇 典型模块开发
第5章 后台管理系统 186
5.1 后台管理系统基本操作 186
5.1.1 初始化管理平台 187
5.1.2 管理平台的基本操作 189
5.2 数据模型的注册和管理 191
5.3 数据模型自定义操作 193
5.3.1 数据模型注册 193
5.3.2 数据模型管理 194
5.3.3 后台管理系统操作 203
5.4 Xadmin管理平台 205
5.4.1 环境配置 205
5.4.2 系统主题配置管理 208
5.4.3 管理平台数据配置 209
5.4.4 项目数据配置管理 210
5.5 本章小结 211

第6章 缓存 212
6.1 关于网站性能优化的建议 212
6.1.1 前端优化 213
6.1.2 后端优化 215
6.1.3 再说缓存 217
6.1.4 缓存问题 218
6.2 Django中的缓存 221
6.2.1 基于开发调试的缓存配置 221
6.2.2 基于本地内存的缓存配置 222
6.2.3 基于文件的缓存配置 222
6.2.4 基于数据库的缓存配置 223
6.2.5 基于Memcached的缓存配置 223
6.2.6 基于Redis的缓存配置 224
6.2.7 数据缓存操作――全站缓存 225
6.2.8 数据缓存操作――视图缓存 227
6.2.9 数据缓存操作――模板缓存 228
6.2.10 数据缓存操作――低级缓存 228
6.2.11 数据缓存操作――分布式带来的问题 232
6.2.12 数据缓存操作――Vary header 232
6.3 项目实战:缓存操作 234
6.3.1 缓存环境搭建 234
6.3.2 配置缓存支持 236
6.3.3 网页视图缓存 236
6.3.4 视图模板缓存 237
6.3.5 数据更新场景下的缓存处理 238
6.4 本章小结 240

第7章 日志处理――必不可少的记录 241
7.1 历史信息管理――日志的重要性 241
7.2 软件开发先锋官――日志核心组件 243
7.2.1 记录器对象――logger 243
7.2.2 操作对象――handler 244
7.2.3 过滤器对象――filter 244
7.2.4 格式化对象――formatter 245
7.3 Django 2.x项目中的日志操作 246
7.3.1 日志基本操作语法 246
7.3.2 通过命名空间实现日志结构化管理 247
7.3.3 记录到控制台的日志配置规则 248
7.3.4 记录到文件的日志配置规则 249
7.3.5 Django中的日志模块API 251
7.3.6 Django中的默认日志配置 252
7.4 项目实战――日志记录 252
7.5 本章小结 256

第8章 Django 2.x扩展功能 257
8.1 Ajax异步数据交互 257
8.1.1 Ajax的底层JavaScript实现 259
8.1.2 Ajax jQuery实现 262
8.1.3 文章评论异步交互 264
8.2 Django邮件操作 268
8.2.1 Web中的邮件功能 269
8.2.2 Django中的邮件配置 269
8.2.3 邮件的发送 270
8.2.4 预防邮件头注入漏洞 273
8.2.5 EmailMessage 275
8.2.6 用户账号激活 279
8.3 数据查询分页 283
8.3.1 Django的数据分页模块 284
8.3.2 文章分页展示功能 286
8.4 站点地图 288
8.4.1 Django中的站点地图 288
8.4.2 项目实战:站点地图操作 292
8.5 权限认证 295
8.5.1 身份认证模块 295
8.5.2 权限管理架构 304
8.5.3 资源访问管理 306
8.6 本章小结 310

第9章 Django REST框架 311
9.1 面向接口编程概述 311
9.1.1 什么是接口 311
9.1.2 接口定义规范 312
9.1.3 接口编程应用 313
9.2 Django rest_framework 315
9.2.1 安装与配置 315
9.2.2 创建项目 316
9.2.3 数据序列化 317
9.2.4 视图操作 317
9.2.5 路由映射 318
9.2.6 分页配置 318
9.2.7 数据访问测试 318
9.3 数据序列化 320
9.3.1 项目初始化 320
9.3.2 自定义数据模型 321
9.3.3 序列化组件操作 321
9.3.4 视图处理组件 322
9.3.5 数据接口测试 324
9.3.6 数据接口测试工具 324
9.4 请求和响应 326
9.4.1 请求对象和响应对象 326
9.4.2 视图渲染 326
9.4.3 业务处理 327
9.4.4 请求数据格式化 328
9.5 CBV构建 329
9.5.1 基于类型的视图组件构建 329
9.5.2 基于类型的路由完善 330
9.5.3 基于类型的视图功能扩展 331
9.5.4 基于类型的视图功能封装 333
9.6 身份认证和权限管理 334
9.6.1 创建基础项目 334
9.6.2 权限限制 337
9.6.3 身份认证API 338
9.6.4 自定义认证权限 340
9.7 规范构建数据接口 341
9.8 视图集及路由配置 344
9.9 本章小结 346

第3篇 项目实战
第10章 项目实战――社区交流平台 348
10.1 项目开发流程 348
10.1.1 前后端耦合开发模式 348
10.1.2 前后端分离开发模式 349
10.2 需求分析 350
10.2.1 用户模块 351
10.2.2 文章模块 353
10.2.3 评论模块 353
10.2.4 私信模块 354
10.2.5 工具模块 355
10.3 详细设计 355
10.3.1 系统数据模型设计 355
10.3.2 用户模块功能流程设计 357
10.3.3 文章模块功能流程设计 359
10.3.4 评论模块功能流程设计 360
10.3.5 私信模块功能流程设计 360
10.3.6 辅助功能 361
10.4 开发与测试 361
10.4.1 用户模块功能开发 362
10.4.2 文章模块功能开发 379
10.4.3 评论模块功能开发 391
10.4.4 私信模块功能开发 394
10.4.5 辅助功能开发 396
10.5 云服务器项目部署 400
10.5.1 云服务器的配置选型 400
10.5.2 服务器环境初始化 401
10.5.3 项目远程部署概述 402
10.5.4 项目部署和备案管理 403
10.6 本章小结 407

第11章 项目实战――图书管理系统 408
11.1 项目需求分析及接口规范定义 408
11.1.1 项目环境及技术选型 408
11.1.2 需求分析:用例分析 409
11.1.3 详细设计:流程设计 411
11.2 基于Vue.js的前端项目构建 414
11.2.1 项目初始化结构 414
11.2.2 项目结构完善及路由分析 417
11.2.3 图书管理员及普通会员登录功能 421
11.2.4 图书信息查询界面设计及路由分析 427
11.3 基于Django的后端项目构建 432
11.3.1 项目初始化结构 432
11.3.2 数据类型定义 433
11.3.3 序列化数据接口开发 435
11.3.4 用户查询接口 436
11.3.5 用户登录接口 438
11.3.6 图书查询接口 439
11.3.7 图书存放区域查询接口 442
11.3.8 图书借阅处理接口重构 444
11.4 业务功能联调 446
11.4.1 图书检索功能调测 447
11.4.2 用户登录功能调测 450
11.4.3 JWT认证 455
11.4.4 图书借阅功能调测 458
11.5 本章小结 460

前言/序言


前  言

为什么要写这本书

随着2016年围棋大赛中AlphaGo战胜人类职业围棋棋手,人工智能开始在全球范围内火爆起来,随之而来的是Python语言的崛起,各大主流公司开始关注Python语言在各个方向的使用情况,从传统的运维方向,到数据爬虫、科学计算以及Web开发等,都能见到Python的身影,尤其是在Web软件开发中Python有着自己的优势。开发人员使用Python Web开发框架Django能非常高效地完成Web软件架构以及功能的快速开发,大大缩短开发周期,所以它深受各大软件公司的青睐,成为时下Web软件开发的首选框架。

目前,市场上关于Python Django开发及框架整合的书籍相对较少,使用Django 2.x版本的框架实现Web开发的书籍更少,能结合企业项目深入浅出地讲解基础技术和实际应用的书籍更加匮乏,使得大量想学习或者想充实自己的Python Web开发人员头疼不已,本书就是针对这种现状编写而成的。书中详尽介绍了Django框架各个组件的详细配置以及API,对于软件开发人员来说,这是一本不可多得的参考手册。本书的目的就是让读者全面、深入并且透彻地理解Django框架的开发理念和开发过程,提高自己的开发水平和项目实战能力。

本书有何特色

1. 技术贯穿案例,讲解深入浅出、通俗易懂

为了使读者能快速掌握书中介绍的技术内容,理解企业项目开发的标准规范和步骤,本书每一章都配有实际开发案例,讲解深入浅出、通俗易懂,可帮助读者学习和掌握技术。

2. 细节操作贯穿每个组件,是一本不错的参考手册

本书不仅在项目案例上进行了精细的筛选,而且对应用技术本身也进行了详尽的阐述,对技术的描述细致而又全面,是读者在进行项目开发时不错的参考手册,能随时辅助读者解决在项目开发过程中遇到的一些技术细节上关于功能完善的问题。

3. 项目实战切合企业标准,读者可从中快速了解软件生命周期

本书专门选取了一些在不同场景下,采用不同开发模式的实战项目,从项目的需求分析、详细设计以及项目开发,到后期的功能重构、项目部署,都进行了详细的讲解,能让读者第一时间了解软件开发的完整步骤,快速熟悉并从事Web开发工作。

4. 随书提供源代码,参考资源详尽、周到

本书大部分章节都提供了源代码,并详尽记录了开发过程,读者可以结合代码快速学习项目案例,快速掌握书中讲解的技术内容。

本书内容及知识体系

第1篇 开发工具及框架概述(第1~4章)

本篇介绍了Django用于Web应用软件开发的各大基础组件,结合每个组件中各种选项的细节处理及配置进行了详细的阐述。这部分内容涵盖了企业项目开发中的大部分功能和技术,通过学习,既可以快速了解并掌握Django框架用于Web应用软件开发的基础技术,也可以将其作为完善项目功能细节时的参考。

第2篇 典型模块开发(第5~9章)

本篇介绍了Django框架在Web领域中的各种扩展功能,讲解了Django框架内建的后端管理系统的使用、第三方管理系统Xadmin的详细配置及构建过程、对项目性能提升最重要的缓存功能配置和操作、基于Memcached和Redis的缓存配置,以及项目中必不可少的日志组件的使用、Ajax异步数据交互、网站邮件收发、身份认证和权限管理、数据分页、站点地图的建设等,最后对时下较为流行的Django rest_framework框架进行了阐述。细致的讲解和切合实际的项目案例,使读者第一时间掌握Web扩展功能,为项目开发提供详尽的参考。

第3篇 项目实战(第10~11章)

本篇主要介绍了前后端耦合、前后端分离两种架构模式下的软件开发流程,从需求分析到项目开发,以及可能出现的需求变动引起的项目重构,都进行了案例分析和整理,在项目定型和技术选型上结合书中讲解的技术,使读者达到学以致用的目的,通过项目实战快速掌握企业项目开发的步骤及规范的流程。

适合阅读本书的读者

• 想全面学习Web开发技术的人员。

• 广大Web开发程序员。

• Python Django Web开发工程师。

• 希望提高项目开发水平的人员。

• 专业培训机构的学员。

• 软件开发项目经理。

• 需要一本案头必备查询手册的人员。

阅读本书的建议

• 没有Python基础的编程新手,需要掌握一定的Python程序开发基础知识。

• 有一定使用Django框架基础的读者,可以根据实际情况选择阅读各个模块和项目案例。

• 对于每一个模块和项目案例,先自己思考实现的思路,然后再阅读,学习效果更好。

提示:从博文视点官网(http://www.broadview.com.cn/40426)下载本书相关代码。