Django+Vue.js实战派――PythonWeb开发与运维
全新正版 极速发货
¥
57.58
4.5折
¥
128
全新
库存4件
作者杨永刚
出版社电子工业出版社
ISBN9787121430848
出版时间2022-04
装帧平装
开本16开
定价128元
货号31408938
上书时间2024-06-04
商品详情
- 品相描述:全新
- 商品描述
-
作者简介
"杨永刚
现就职于中国电信新疆公司大数据与AI中心。
微软最有价值专家(MSMVP)\高级工程师\软件工程硕士\系统架构师\省公司创新杰出人才\集团公司B级人才\中央企业优选员工\电信集团认证Hive讲师。
20年的IT开发经验,擅长C#、Python、Java语言,擅长C/S、B/S编程,具有丰富的项目开发经验。先后主持多个集团级、省级大型项目,任技术经理、项目经理。荣获集团科技进步二等奖。"
目录
★★第1篇 基 础
★第1章 走进Django /2
●1.1 了解Django /2
1.1.1 Django发展历史和版本 /2
1.1.2 MVC和MTV模式 /3
●1.2 安装Django /5
1.2.1 安装Python虚拟环境 /5
1.2.2 在Windows中安装Django /7
●1.3 用VS Code编辑器进行Django开发 /8
1.3.1 设置中文界面 /8
1.3.2 安装Python插件 /9
1.3.3 安装Django插件 /9
●1.4 【实战】开发第1个Django应用 /10
1.4.1 创建项目 /10
1.4.2 创建应用 /10
1.4.3 处理控制器 /12
1.4.4 处理模板 /12
1.4.5 运行应用 /13
●1.5 Django项目的运行和调试 /13
1.5.1 设置运行环境 /14
1.5.2 调试项目 /14
★第2章 网站的入口――Django的路由和视图 /16
●2.1 认识路由 /16
2.1.1 路由系统的基本配置 /16
2.1.2 【实战】用“路由包含”简化项目的复杂度 /17
2.1.3 解析路由参数 /18
2.1.4 【实战】用re_path()方法正则匹配复杂路由 /20
2.1.5 反向解析路由 /22
●2.2 认识视图函数 /23
2.2.1 什么是视图函数 /23
2.2.2 视图函数的底层原理 /24
2.2.3 视图处理函数的使用 /27
●2.3 认识视图类 /30
2.3.1 什么是视图类 /30
2.3.2 对比视图函数和视图类 /30
2.3.3 利用视图类进行功能设计 /31
★第3章 页面展现――基于Django模板 /36
●3.1 Django模板语言――DTL /36
3.1.1 模板变量 /36
3.1.2 模板标签 /38
3.1.3 模板过滤器 /42
●3.2 模板的高级用法 /43
3.2.1 模板转义 /43
3.2.2 【实战】自定义过滤器 /44
3.2.3 【实战】自定义标签 /46
●3.3 模板继承 /49
3.3.1 设计母版页 /49
3.3.2 设计内容页 /50
3.3.3 设计组件 /51
●3.4 配置模板文件 /52
3.4.1 理解HTML、CSS和JavaScript /52
3.4.2 配置静态文件 /53
★第4章 使用数据库――基于Django模型 /55
●4.1 Django模型 /55
4.1.1 定义模型 /55
4.1.2 了解模型中的关系 /59
4.1.3 配置项目文件 /63
4.1.4 迁移数据 /64
●4.2 用Django中的ORM操作数据库 /66
4.2.1 了解ORM /66
4.2.2 熟悉QuerySet对象 /67
4.2.3 查询数据 /69
4.2.4 新增数据 /70
4.2.5 更新数据 /71
4.2.6 删除数据 /71
4.2.7 操作关联表 /71
4.2.8 F()函数和Q()函数 /77
4.2.9 执行原生SQL /78
4.2.10 事务处理 /81
★第5章 自动生成界面――基于Django表单 /84
●5.1 HTML表单 /84
5.1.1 用令牌CSRF保证表单的安全 /85
5.1.2 【实战】用HTML表单上传文件 /86
●5.2 Django的Form表单 /87
5.2.1 认识Form表单 /87
5.2.2 表单数据的校验 /93
5.2.3 表单数据的获取 /97
5.2.4 【实战】用Form表单上传文件 /98
●5.3 Django的模型表单 /100
5.3.1 认识模型表单 /100
5.3.2 校验模型表单数据 /101
5.3.3 处理模型表单数据 /102
●5.4 使用AJAX提交表单 /103
5.4.1 基于jQuery技术实现AJAX /103
5.4.2 在AJAX请求中设置令牌csrf_token /104
5.4.3 【实战】使用AJAX实现用户登录 /105
★第6章 用户认证 /107
●6.1 初识用户认证 /107
6.1.1 认识Auth模块 /107
6.1.2 了解用户权限数据表 /109
●6.2 用户管理 /109
6.2.1 用户注册 /110
6.2.2 用户登录 /111
6.2.3 扩展用户模型 /113
●6.3 【实战】利用用户模型实现用户身份认证及状态保持 /114
6.3.1 增加视图函数myuser_reg() /114
6.3.2 增加视图函数myuser_login() /115
6.3.3 用户退出的设置 /115
6.3.4 用户首页的显示 /115
●6.4 权限管理 /117
6.4.1 权限的设置 /117
6.4.2 权限认证的相关方法 /117
6.4.3 自定义用户权限 /118
6.5 【实战】用装饰器控制页面权限 /119
●6.5.1 增加权限装饰器 /119
6.5.2 修改模板文件 /120
6.5.3 设置项目配置文件 /120
6.5.4 测试权限 /120
●6.6 中间件技术 /121
6.6.1 认识Django中间件 /122
6.6.2 使用Django中间件 /123
6.6.3 【实战】用中间件简化权限认证 /125
★★第2篇 后台项目实战
★第7章 【实战】开发一个商城系统的后台 /128
●7.1 商城系统后台的设计分析 /128
7.1.1 需求分析 /128
7.1.2 架构设计 /129
7.1.3 数据库模型设计 /130
●7.2 使用Django自带的Admin后台管理系统 /131
7.2.1 创建商城系统后台项目 /131
7.2.2 登录Admin后台管理系统 /133
7.2.3 配置Admin后台管理系统 /133
●7.3 用Bootstrap框架实现商城系统后台 /136
7.3.1 开发“用户注册”模块 /136
7.3.2 开发“用户登录”模块 /140
7.3.3 开发商城系统后台首页面 /143
7.3.4 开发“用户信息维护”模块 /146
7.3.5 开发“商品分类管理”模块 /156
7.3.6 开发“商品信息管理”模块 /159
★★第3篇 进 阶
★第8章 接口的设计与实现 /168
●8.1 前后端分离 /168
8.1.1 了解前后端分离 /168
8.1.2 为什么要前后端分离 /169
8.1.3 如何实施前后端分离 /171
8.1.4 前后端分离的技术栈 /171
●8.2 设计符合标准的RESTful接口 /172
●8.3 序列化和反序列化 /174
8.3.1 认识序列化和反序列化 /174
8.3.2 用JSON模块进行数据交互 /174
8.3.3 用JsonResponse类进行数据交互 /175
●8.4 接口开发――基于Django Rest Framework框架 /176
8.4.1 安装DRF框架 /177
8.4.2 用Serializer类和ModelSerializer类进行序列化操作 /177
8.4.3 请求和响应 /182
8.4.4 【实战】用装饰器@api-view实现视图函数 /183
8.4.5 【实战】用APIView类实现视图类 /185
8.4.6 【实战】用Mixins类改进RESTful接口 /187
8.4.7 【实战】用GenericAPIView类实现视图类 /190
8.4.8 用视图集ViewSets改进RESTful接口 /192
8.4.9 分页 /197
8.4.10 过滤、搜索和排序 /198
8.4.11 自定义消息格式 /202
8.4.12 自定义异常格式 /207
●8.5 接口安全机制 /209
8.5.1 基于DRF框架实现Token认证 /209
8.5.2 基于DRF框架实现JWT认证 /212
8.5.3 基于后端技术的跨域解决方案 /218
●8.6 【实战】实现商城系统的接口 /220
8.6.1 用户相关接口 /220
8.6.2 商品相关接口 /226
8.6.3 订单相关接口 /233
8.6.4 基础接口――“地址信息”接口 /241
●8.7 【实战】利用DRF生成接口文档 /243
8.7.1 安装依赖 /243
8.7.2 配置文件 /243
8.7.3 测试 /243
●8.8 【实战】利用Swagger服务让接口文档更专业 /244
8.8.1 安装配置django-rest-swagger /244
8.8.2 配置视图类 /244
8.8.3 配置路由 /245
8.8.4 运行效果 /245
★第9章 分层的自动化测试 /246
●9.1 分层的自动化测试 /246
9.1.1 单元自动化测试 /247
9.1.2 接口自动化测试 /247
9.1.3 用户界面自动化测试 /248
●9.2 单元自动化测试 /248
9.2.1 认识单元测试框架unittest /248
9.2.2 【实战】用unittest进行单元测试 /249
9.2.3 【实战】用HTMLTestRunner生成HTML报告 /251
9.2.4 【实战】用Pytest进行单元测试 /252
9.2.5 【实战】在Django中编写和运行测试用例 /255
●9.3 接口自动化测试 /256
9.3.1 【实战】进行Postman测试 /257
9.3.2 【实战】用“Requests + Pytest”实现接口自动化测试 /258
●9.4 用户界面自动化测试 /260
9.4.1 认识自动化测试Selenium库 /260
9.4.2 安装Selenium库 /260
9.4.3 基本使用 /261
9.4.4 页面元素定位的方法 /262
9.4.5 Selenium库的高级用法 /263
9.4.6 【实战】自动化测试商城后台管理系统的登录页面 /268
★第10章 基于Redis的缓存技术 /270
●10.1 为什么需要缓存 /270
●10.2 用Django内置模块实现缓存 /270
10.2.1 基于数据库方式实现缓存 /271
10.2.1 缓存视图函数和视图类 /271
●10.3 用DRF框架实现缓存 /273
10.3.1 用装饰器完成缓存 /273
10.3.2 用CacheResponseMixin类完成缓存 /274
●10.4 用Redis实现缓存 /275
10.4.1 搭建Redis环境 /275
10.4.2 用Django操作Redis /276
10.4.3 【实战】用Redis存储session信息 /278
★★第4篇 前台项目实战
★第11章 开发商城系统的前台(接第7章实战) /282
●11.1 商城系统前台的设计分析 /282
11.1.1 需求分析 /282
11.1.2 架构设计 /283
●11.2 前端开发利器――Vue.js框架 /284
11.2.1 认识Vue.js /284
11.2.2 用Vue-CLI脚手架快速搭建项目骨架 /284
11.2.3 用NPM进行包管理和分发 /286
11.2.4 用npm run build命令打包项目 /287
11.2.5 用Visual Stdio Code编辑器进行代码开发 /287
●11.3 Vue.js的基本操作 /287
11.3.1 用插值实现数据绑定 /288
11.3.2 用computed属性实现变量监听 /289
11.3.3 用class和style设置样式 /290
11.3.4 用v-if实现条件渲染 /291
11.3.5 用v-for实现列表渲染 /292
11.3.6 用“v-on:”或“@”实现事件绑定 /293
11.3.7 用v-model实现双向数据绑定 /294
●11.4 用Vue Router库实现路由管理 /295
11.4.1 了解Vue Router库 /295
11.4.2 基本用法 /296
●11.5 用Axios库实现数据交互 /297
11.5.1 了解Axios库 /297
11.5.2 基本用法 /297
●11.6 用Vuex实现状态管理 /299
11.6.1 基本用法 /299
11.6.2 用mutations和actions操作变量 /301
11.6.3 用getters获取变量 /303
11.6.4 用扩展运算符简化编写 /304
●11.7 【实战】用Vue.js开发商城系统的前台 /304
11.7.1 核心技术点介绍 /305
11.7.2 公共页面开发 /307
11.7.3 “商品首页”模块开发 /313
11.7.4 “商品列表”模块开发 /321
11.7.5 “商品详情”模块开发 /328
11.7.6 “用户注册”模块开发 /332
11.7.7 “用户登录”模块开发 /335
11.7.8 “购物车管理”模块开发 /339
11.7.9 “订单管理”模块开发 /344
11.7.10 “个人中心”模块开发 /348
★★第5篇 部 署 运 维
★第12章 Django的传统部署 /358
●12.1 部署前的准备工作 /358
12.1.1 准备虚拟机 /358
12.1.2 安装Python 3.8.2 /359
12.1.3 安装虚拟环境和Django /359
●12.2 使用MySQL数据库 /361
12.2.1 安装MySQL数据库 /361
12.2.2 配置MySQL数据库 /362
12.2.3 客户端连接MySQL数据库 /363
12.2.4 【实战】生成商城系统的数据库和表 /365
●12.3 用uWSGI进行部署 /365
12.3.1 WSGI、uwsgi和uWSGI的关系 /365
12.3.2 安装uwsgi软件 /366
12.3.3 启动并测试uwsgi /367
12.3.4 详解配置文件 /367
12.3.5 常用命令 /368
12.3.6 【实战】部署商城系统后台 /368
●12.4 用Gunicorn进行部署 /370
12.4.1 安装Gunicorn /370
12.4.2 启动服务并测试 /371
12.4.3 编写配置文件 /371
12.4.4 【实战】部署商城系统接口 /372
●12.5 用Supervisor管理进程 /373
12.5.1 安装和配置 /373
12.5.2 了解配置文件 /374
12.5.3 常用命令 /374
12.5.4 Web监控界面 /375
12.5.5 【实战】用Supervisor管理进程 /376
●12.6 用Nginx进行代理 /377
12.6.1 正向代理和反向代理 /377
12.6.2 为什么用了uWSGI还需要用Nginx /378
12.6.3 安装Nginx /378
12.6.4 了解配置文件 /379
12.6.5 【实战】部署商城系统后台 /381
12.6.6 【实战】部署商城系统接口 /382
12.6.7 【实战】部署商城系统前台 /383
12.6.8 【实战】利用Nginx负载均衡部署商城系统接口 /384
★第13章 Django的Docker部署 /388
●13.1 介绍Docker /388
13.1.1 为什么要使用Docker /388
13.1.2 虚拟机和容器的区别 /390
13.1.3 了解Docker的镜像、容器和仓库 /390
●13.2 安装并启动Docker /392
13.2.1 安装Docker /392
13.2.2 启动Docker /393
●13.3 操作Docker镜像 /394
13.3.1 搜索镜像 /394
13.3.2 获取镜像 /394
13.3.3 查看镜像 /395
13.3.4 导入/导出镜像 /396
13.3.5 配置国内镜像仓库 /396
●13.4 操作Docker容器 /397
13.4.1 启动容器 /397
13.4.2 进入容器 /399
13.4.3 停止容器 /400
13.4.4 删除容器 /400
13.4.5 复制容器中的文件 /401
13.4.6 查看容器中的日志 /401
●13.5 【实战】用Docker部署MySQL /401
13.5.1 拉取镜像 /401
13.5.2 创建容器 /402
13.5.3 进入MySQL容器 /402
●13.6 【实战】用Docker方式部署Redis /403
13.6.1 拉取Redis /403
13.6.2 创建并启动Redis容器 /404
●13.7 制作自己的镜像――编写Dockerfile文件 /404
13.7.1 语法规则 /404
13.7.2 构建Nginx镜像 /405
●13.8 将镜像推送到私有仓库Harbor中 /407
13.8.1 搭建Harbor私有仓库 /407
13.8.2 安装Docker-Compose /407
13.8.3 安装Harbor /407
— 没有更多了 —
以下为对购买帮助不大的评价