Python Flask高级编程之从0到1开发《鱼书》精品项目

Python Flask高级编程之从0到1开发《鱼书》精品项目 1

Python Flask高级编程之从0到1开发《鱼书》精品项目 2

课程介绍(A000121):

通过一个项目的实践,深入浅出讲解Flask核心原理、剖析Flask源码,在解读Flask的同时,学习Python高级编程、培养面向对象思维,是市面上稀缺的优质课程。

课程目录:

图片[1]-Python Flask高级编程之从0到1开发《鱼书》精品项目-51自学联盟
  • 第1章 课程导语试看2 节 | 4分钟
  • 介绍课程的内容
    • 视频:1-1 开宗明义 (02:28)试看
    • 视频:1-2 课程维护与提问 (00:48)
  • 第2章 Flask的基本原理与核心知识试看11 节 | 80分钟
  • 本章我们首先介绍Python官方推荐的最佳包与虚拟环境管理工具:Pipenv。接着我们来学习唯一URL原则、重定向、响应对象Response。
    • 视频:2-1 鱼书是一个什么样的产品 (06:28)试看
    • 视频:2-2 准备工作 (03:50)试看
    • 视频:2-3 使用官方推荐的pipenv创建虚拟环境(很好用哦~) (11:44)
    • 视频:2-4 开发工具推荐 (02:11)
    • 视频:2-5 设置开发工具的默认解释器 (06:11)
    • 作业:2-6 目的:预习Flask
    • 视频:2-7 flask最小原型与唯一URL原则 (12:03)
    • 视频:2-8 路由的另一种注册方法 (08:28)
    • 视频:2-9 app.run相关参数与flask配置文件 (11:16)
    • 视频:2-10 你并没有真正理解 if __name__的作用 (06:10)
    • 视频:2-11 响应对象:Response (11:30)
  • 第3章 数据与flask路由11 节 | 107分钟
  • 本章我们重点探讨数据获取、视图函数的编写规范、flask的路由原理(深入源码)。此外我们还将讲解常见的Python应用误区,比如循环导入所造成的问题。
    • 视频:3-1 搜索而不是拍照上传 (05:30)
    • 视频:3-2 书籍搜索与查询 1-数据API (03:41)
    • 视频:3-3 书籍搜索与查询 2-搜索关键字 (11:37)
    • 视频:3-4 书籍搜索与查询 3-简单的重构 (08:30)
    • 视频:3-5 获取书籍数据:调用鱼书API (17:00)
    • 视频:3-6 requests vs urllib (09:23)
    • 视频:3-7 从API获取数据 (19:20)
    • 视频:3-8 使用jsonify (02:17)
    • 视频:3-9 将视图函数拆分到单独的文件中 (08:34)
    • 视频:3-10 深入了解flask路由 (11:23)
    • 视频:3-11 循环引入流程分析 (09:34)
  • 第4章 蓝图、模型与CodeFirst10 节 | 113分钟
  • 本章我们尝试把单文件的flask重构为具有模块意义的分文件模型,接着我们会探讨如何使用CodeFirst的思想来创建数据库表。
    • 视频:4-1 应用、蓝图与视图函数 (09:19)
    • 视频:4-2 用蓝图注册视图函数 (06:44)
    • 视频:4-3 单蓝图多模块拆分视图函数 (11:48)
    • 视频:4-4 request 对象 (11:06)
    • 视频:4-5 WTForms参数验证 (15:56)
    • 视频:4-6 拆分配置文件 (20:14)
    • 视频:4-7 Model First、Database First与Code First (09:52)
    • 视频:4-8 定义第一个模型类 (11:47)
    • 视频:4-9 将模型映射到数据库中 (09:19)
    • 视频:4-10 ORM与CodeFirst区别 (06:35)
  • 第5章 flask核心机制8 节 | 76分钟
  • flask最核心的是两个上下文,而这两个上下中包含大量的Python高级编程应用。我们需要理解上下文的意义,并且通过借鉴flask的下文机制,学习Python的上下文管理器(With)、栈结构的应用。我们还将学习,到底如何通过阅读源码来解决问题。…
    • 视频:5-1 flask中经典错误 working outside application context (06:06)
    • 视频:5-2 AppContext、RequestContext、Flask与Request之间的关系 (08:57)
    • 视频:5-3 详解flask上下文与出入栈 (17:36)
    • 作业:5-4 目的:理解线程与进程
    • 视频:5-5 flask上下文与with语句 (15:46)
    • 视频:5-6 详解上下文管理器的__exit__方法 (12:59)
    • 作业:5-7 目的: 掌握数据库设计
    • 视频:5-8 阅读源码解决db.create_all的问题 (14:06)
  • 第6章 Flask中的多线程与线程隔离技术14 节 | 132分钟
  • 对于Web,多线程是难以避免的。本章节,我们将借助flask的原理来学习进程、线程、什么是线程安全、什么又是线程隔离、如何在Python中实现线程隔离、LocalStack机制又是什么。学完本章,你将理解为什么由于GIL(全局解释器锁)的存在,Python的多线程依然是有意义的。…
    • 视频:6-1 什么是进程 (10:01)
    • 视频:6-2 线程的概念 (05:35)
    • 视频:6-3 多线程 (12:43)
    • 视频:6-4 多线程的优势与好处 (03:16)
    • 视频:6-5 全局解释器锁GIL (14:19)
    • 视频:6-6 对于IO密集型程序,多线程是有意义的 (05:46)
    • 视频:6-7 开启flask多线程所带来的问题 (14:59)
    • 视频:6-8 线程隔离 (05:23)
    • 视频:6-9 Flask中的线程隔离对象Local (11:51)
    • 视频:6-10 Flask 中的线程隔离栈:LocalStack (07:38)
    • 视频:6-11 LocalStack作为-Stack-的基本用法 (07:16)
    • 视频:6-12 LocalStack作为线程隔离对象的意义 (05:01)
    • 视频:6-13 flask中被线程隔离的对象 (14:25)
    • 视频:6-14 梳理串接flask的一些名词 (13:19)
  • 第7章 书籍详情页面的构建(ViewModel、面向对象与重构)8 节 | 90分钟
  • 本章我们提出一个概念ViewModel,并详细解释ViewModel的意义。此外面向对象虽然是老生常谈,但你真的理解面向对象吗?我们将在本章中通过重构来一步步揭示到底什么才是对象,如何写出面向对象的代码来。思维的训练,永远比业务要重要。…
    • 视频:7-1 ViewModel的基本概念 (14:52)
    • 视频:7-2 使用ViewModel处理书籍数据 上 (14:50)
    • 视频:7-3 使用ViewModel处理书籍数据 下 (09:42)
    • 视频:7-4 伪面向对象:披着面向对象外衣的面向过程 (06:06)
    • 视频:7-5 重构鱼书核心对象:YuShuBook 上 (10:01)
    • 视频:7-6 重构鱼书核心对象:YuShuBook 下 (08:56)
    • 视频:7-7 从json序列化看代码解释权反转 (14:17)
    • 视频:7-8 详解单页面与网站的区别 (11:03)
  • 第8章 静态文件、模板、消息闪现与Jinja212 节 | 91分钟
  • 本章,我们将通过借助学习flask的模板来间接学习:列表推导式的应用、三元表达式的应用、@Property属性描述符、filter函数的应用、管道过滤器。这些知识我们虽然在入门与进阶课程中学习过,但是他们到底如何使用?这是个问题。我们本章将一一解释。…
    • 视频:8-1 静态文件访问原理 (13:24)
    • 视频:8-2 模板文件的位置与修改方案_x264 (09:18)
    • 视频:8-3 Jinja2的概念 (04:48)
    • 视频:8-4 在Jinja2中读取字典和对象 (02:33)
    • 视频:8-5 流程控制语句 if (04:13)
    • 视频:8-6 流程控制语句 for in 循环 (03:47)
    • 视频:8-7 使用模板继承 (06:27)
    • 视频:8-8 过滤器与管道命令 (09:35)
    • 视频:8-9 反向构建URL (08:02)
    • 视频:8-10 消息闪现、SecretyKey与变量作用域 (08:54)
    • 视频:8-11 显示搜索结果页面 (10:06)
    • 视频:8-12 页面结构解析 (09:02)
  • 第9章 用户登录与注册16 节 | 111分钟
  • 本章我们通过使用flask-login这个插件来处理用户的登录与注册。同时我们将借助登录与注册来学习Flask中的Cookie、重定向、与重定向的隐患:重定向攻击。此外,我们还会介绍Python的getter与setter的妙用。
    • 视频:9-1 viewmodel意义的体现与filter函数的巧妙应用 (09:10)
    • 视频:9-2 书籍详情页面业务逻辑分析 (05:31)
    • 视频:9-3 实现书籍详情页面 (07:54)
    • 视频:9-4 模型与模型关系 (10:41)
    • 视频:9-5 自定义基类模型 (03:56)
    • 视频:9-6 用户注册 (07:58)
    • 视频:9-7 Python的动态赋值 (07:23)
    • 视频:9-8 Python属性描述符实现getter与setter (07:28)
    • 视频:9-9 ORM的方式保存模型 (04:23)
    • 视频:9-10 自定义验证器 (05:15)
    • 视频:9-11 redirect重定向 (03:30)
    • 视频:9-12 cookie (05:04)
    • 视频:9-13 cookie的应用 (08:28)
    • 视频:9-14 login_user 将用户信息写入cookie (09:33)
    • 视频:9-15 访问权限控制 (07:42)
    • 视频:9-16 重定向攻击 (06:37)
  • 第10章 书籍交易模型(数据库事务、重写Flask中的对象)13 节 | 88分钟
  • 本章是一个综合应用章节。我们将看到如何使用多个Python的知识点综合解决问题。我们将进一步的使用@contextmanager来改善前面所学到的上下文管理器,并结合yield来优化数据库事务。此外,我们还将重写Flask中的一些对象的方法,来实现我们自己的业务逻辑。…
    • 视频:10-1 鱼豆 (08:05)
    • 视频:10-2 思维逻辑锻炼 (05:59)
    • 视频:10-3 事务与回滚 (04:46)
    • 视频:10-4 Python @contextmanager (10:17)
    • 视频:10-5 灵活使用@contextmanager (03:04)
    • 视频:10-6 结合继承、yield、contextmanager、rollback来解决问题 (08:33)
    • 视频:10-7 类变量的陷阱 (05:24)
    • 视频:10-8 合理使用ajax (05:17)
    • 视频:10-9 书籍交易视图模型 (11:39)
    • 视频:10-10 处理时间 (02:15)
    • 视频:10-11 书籍详情页面 (03:42)
    • 视频:10-12 再谈MVC中的Model (06:36)
    • 视频:10-13 重写filter_by (11:35)
  • 第11章 鱼书业务处理13 节 | 87分钟
  • 本章我们将使用前面所学习的Flask与Python知识集中处理我们的业务。包括:最近上传的图书(首页)、礼物清单与赠送清单、鱼漂与个人中心等。
    • 视频:11-1 最近的礼物(复杂SQL的编写方案) (08:25)
    • 视频:11-2 链式调用 (01:51)
    • 视频:11-3 完成最近的礼物(业务的四种编写方案) (11:53)
    • 作业:11-4 目的:理解ORM
    • 视频:11-5 我的礼物 一 (使用db.session和filter做查询) (09:13)
    • 视频:11-6 我的礼物 二(group_by与funct.count统计联合使用) (11:52)
    • 作业:11-7 目的:装饰器的高级应用
    • 视频:11-8 我的礼物 三 (不要在函数中返回元组,而应该返回字典) (05:13)
    • 视频:11-9 我的礼物 四 (12:48)
    • 视频:11-10 用户注销 (03:29)
    • 视频:11-11 我的心愿 一 (07:13)
    • 视频:11-12 我的心愿 二 (再谈循环导入的解决方案) (07:36)
    • 视频:11-13 我的心愿 三 (谈谈重复代码的封装技巧) (06:51)
  • 第12章 Python与Flask的结合应用25 节 | 208分钟
  • 在《Python3入门与进阶》中我们详细讲解了装饰器,但是装饰器到底应该怎么用?本章将通过使用带参数的高级装饰器来实现邮件发送的频率限制。同时我们将分析SQLAlchemy中的多继承特性、利用迭代器来改善和优化我们的代码。
    • 视频:12-1 忘记密码(重置密码流程分析) (06:13)
    • 视频:12-2 first_or_404 (07:43)
    • 视频:12-3 callable 可调用对象的意义 (11:47)
    • 视频:12-4 HTTPException 一 (04:44)
    • 视频:12-5 HTTPException 二 (05:16)
    • 视频:12-6 装饰器app_errorhandler:AOP的应用 (08:14)
    • 视频:12-7 发送电子邮件 一 (08:58)
    • 视频:12-8 发送电子邮件 二 (08:30)
    • 视频:12-9 使用itsdangerous生成令牌 (09:31)
    • 视频:12-10 重置密码 (09:33)
    • 视频:12-11 异步发送电子邮件 (14:56)
    • 视频:12-12 鱼漂业务逻辑与Drift模型 (06:44)
    • 视频:12-13 合理利用数据冗余记录历史状态 (08:39)
    • 视频:12-14 鱼漂条件检测 (15:41)
    • 视频:12-15 完成鱼漂业务逻辑 (10:11)
    • 视频:12-16 交易记录页面 (06:12)
    • 视频:12-17 Drift ViewModel 一 (15:25)
    • 视频:12-18 Drift ViewModel 二 (04:10)
    • 视频:12-19 三种类模式的总结与对比 (05:31)
    • 视频:12-20 更好的使用枚举 (11:19)
    • 视频:12-21 超权现象防范 (05:36)
    • 视频:12-22 拒绝请求 (03:31)
    • 视频:12-23 邮寄成功 (06:05)
    • 视频:12-24 撤销礼物与心愿 (06:02)
    • 视频:12-25 向他人赠送书籍 (06:25)
  • 第13章 进阶教程《Python Flask高级编程-下篇》多章节试看7 节 | 58分钟
  • 为让同学们选择更适合进阶提升的教程,特申请了《Python Flask高级编程(下篇)》课程多篇章内容试看,让同学们充分了解新课程再购买。虽然是试看,但我也希望同学们能够从试看中学到知识。我尽可能保证试看章节的完整性,但很难保证绝对的完整,望大家理解。…
    • 视频:13-1 环境、开发工具与flask1.0 (05:18)
    • 视频:13-2 初始化项目 (03:57)
    • 视频:13-3 新建入口文件 (07:13)
    • 视频:13-4 蓝图分离视图函数的缺陷 (09:27)
    • 视频:13-5 打开思维,创建自己的Redprint——红图 (11:32)
    • 视频:13-6 实现Redprint (16:50)
    • 视频:13-7 优化Redprint (03:19)

文件目录:

├─Python Flask高级编程之从0到1开发《鱼书》精品项目-399元-完结
│ │ fisher(非课程同步代码,课程同步代码将在课程完成后更新.zip
│ │ 初始代码.zip
│ │
│ ├─第01章 课程导语
│ │ 1.mp4
│ │ 2.mp4
│ │
│ ├─第02章 Flask的基本原理与核心知识
│ │ 10_batch.mp4
│ │ 1_batch.mp4
│ │ 2_batch.mp4
│ │ 3_batch.mp4
│ │ 4_batch.mp4
│ │ 5_batch.mp4
│ │ 6_batch.mp4
│ │ 7_batch.mp4
│ │ 8_batch.mp4
│ │ 9_batch.mp4
│ │ .html.url
│ │
│ ├─第03章 数据与flask路由
│ │ 3-1 搜索而不是拍照上传.mp4
│ │ 3-10 深入了解flask路由.mp4
│ │ 3-11 循环引入流程分析.mp4
│ │ 3-2 书籍搜索与查询 1-数据API.mp4
│ │ 3-3 书籍搜索与查询 2-搜索关键字.mp4
│ │ 3-4 书籍搜索与查询 3-简单的重构.mp4
│ │ 3-5 获取书籍数据:调用鱼书API.mp4
│ │ 3-6 requests vs urllib.mp4
│ │ 3-7 从API获取数据.mp4
│ │ 3-8 使用jsonify.mp4
│ │ 3-9.mp4
│ │
│ ├─第04章 蓝图、模型与CodeFirst
│ │ 4-1 应用、蓝图与视图函数.mp4
│ │ 4-10 ORM与CodeFirst区别.mp4
│ │ 4-2 用蓝图注册视图函数.mp4
│ │ 4-3 单蓝图多模块拆分视图函数.mp4
│ │ 4-4 request 对象.mp4
│ │ 4-5 WTForms参数验证.mp4
│ │ 4-6 拆分配置文件.mp4
│ │ 4-7 Model First、Database First与Code First.mp4
│ │ 4-8 定义第一个模型类.mp4
│ │ 4-9 将模型映射到数据库中.mp4
│ │
│ ├─第05章 flask核心机制
│ │ 1.mp4
│ │ 2.mp4
│ │ 3.mp4
│ │ 4.mp4
│ │ 5.mp4
│ │ 6.mp4
│ │
│ ├─第06章 Flask中的多线程与线程隔离技术
│ │ 6-1 什么是进程.mp4
│ │ 6-10 Flask 中的线程隔离栈:LocalStack.mp4
│ │ 6-11 LocalStack作为-Stack-的基本用法.mp4
│ │ 6-12 LocalStack作为线程隔离对象的意义.mp4
│ │ 6-13 flask中被线程隔离的对象.mp4
│ │ 6-14 梳理串接flask的一些名词.mp4
│ │ 6-2 线程的概念.mp4
│ │ 6-3 多线程.mp4
│ │ 6-4 多线程的优势与好处.mp4
│ │ 6-5 全局解释器锁GIL.mp4
│ │ 6-6 对于IO密集型程序,多线程是有意义的.mp4
│ │ 6-7 开启flask多线程所带来的问题.mp4
│ │ 6-8 线程隔离.mp4
│ │ 6-9 Flask中的线程隔离对象Local.mp4
│ │ .html.url
│ │
│ ├─第07章 书籍详情页面的构建(ViewModel、面向对象与重构)
│ │ 7-1 ViewModel的基本概念.mp4
│ │ 7-2 使用ViewModel处理书籍数据 上.mp4
│ │ 7-3 使用ViewModel处理书籍数据 下.mp4
│ │ 7-4 伪面向对象:披着面向对象外衣的面向过程.mp4
│ │ 7-5 重构鱼书核心对象:YuShuBook 上.mp4
│ │ 7-6 重构鱼书核心对象:YuShuBook 下.mp4
│ │ 7-7 从json序列化看代码解释权反转.mp4
│ │ 7-8 详解单页面与网站的区别.mp4
│ │
│ ├─第08章 静态文件、模板、消息闪现与Jinja2
│ │ 8-1 静态文件访问原理.mp4
│ │ 8-10 消息闪现、SecretyKey与变量作用域.mp4
│ │ 8-11 显示搜索结果页面.mp4
│ │ 8-12 页面结构解析.mp4
│ │ 8-2 模板文件的位置与修改方案_x264.mp4
│ │ 8-3 Jinja2的概念.mp4
│ │ 8-4 在Jinja2中读取字典和对象.mp4
│ │ 8-5 流程控制语句 if.mp4
│ │ 8-6 流程控制语句 for in 循环.mp4
│ │ 8-7 使用模板继承.mp4
│ │ 8-8 过滤器与管道命令.mp4
│ │ 8-9 反向构建URL.mp4
│ │
│ ├─第09章 用户登录与注册
│ │ 9-1 viewmodel意义的体现与filter函数的巧妙应用.mp4
│ │ 9-10 自定义验证器.mp4
│ │ 9-11 redirect重定向.mp4
│ │ 9-12 cookie.mp4
│ │ 9-13 cookie的应用.mp4
│ │ 9-14 login_user 将用户信息写入cookie.mp4
│ │ 9-15 访问权限控制.mp4
│ │ 9-16 重定向攻击.mp4
│ │ 9-2 书籍详情页面业务逻辑分析.mp4
│ │ 9-3 实现书籍详情页面.mp4
│ │ 9-4 模型与模型关系.mp4
│ │ 9-5 自定义基类模型.mp4
│ │ 9-6 用户注册.mp4
│ │ 9-7 Python的动态赋值.mp4
│ │ 9-8 Python属性描述符实现getter与setter.mp4
│ │ 9-9 ORM的方式保存模型.mp4
│ │
│ ├─第10章 书籍交易模型(数据库事务、重写Flask中的对象)
│ │ 10-1 鱼豆.mp4
│ │ 10-10 处理时间.mp4
│ │ 10-11 书籍详情页面.mp4
│ │ 10-12 再谈MVC中的Model.mp4
│ │ 10-13 重写filter_by.mp4
│ │ 10-2 思维逻辑锻炼.mp4
│ │ 10-3 事务与回滚.mp4
│ │ 10-4 Python @contextmanager.mp4
│ │ 10-5 灵活使用@contextmanager.mp4
│ │ 10-6 结合继承、yield、contextmanager、rollback来解决问题.mp4
│ │ 10-7 类变量的陷阱.mp4
│ │ 10-8 合理使用ajax.mp4
│ │ 10-9 书籍交易视图模型.mp4
│ │
│ ├─第11章 鱼书业务处理
│ │ 11-1 最近的礼物(复杂SQL的编写方案).mp4
│ │ 11-10 我的心愿 二 (再谈循环导入的解决方案).mp4
│ │ 11-11 我的心愿 三 (谈谈重复代码的封装技巧).mp4
│ │ 11-2 链式调用.mp4
│ │ 11-3 完成最近的礼物(业务的四种编写方案).mp4
│ │ 11-4 我的礼物 一 (使用db.session和filter做查询).mp4
│ │ 11-5 我的礼物 二(group_by与funct.count统计联合使用).mp4
│ │ 11-6 我的礼物 三 (不要在函数中返回元组,而应该返回字典).mp4
│ │ 11-7 我的礼物 四.mp4
│ │ 11-8 用户注销.mp4
│ │ 11-9 我的心愿 一.mp4
│ │ .html.url
│ │
│ └─第12章 Python与Flask的结合应用
│ 10.mp4
│ 11.mp4
│ 12.mp4
│ 13.mp4
│ 14.mp4
│ 15.mp4
│ 16.mp4
│ 17.mp4
│ 18.mp4
│ 19.mp4
│ 1.mp4
│ 20.mp4
│ 21.mp4
│ 22.mp4
│ 23.mp4
│ 24.mp4
│ 25.mp4
│ 2.mp4
│ 3.mp4
│ 4.mp4
│ 5.mp4
│ 6.mp4
│ 7.mp4
│ 8.mp4
│ 9.mp4
  • wechat

    朋友圈不定时发福利(开通会员免费获取资源)

  • 微信号

    wqxzvip

    点击我自动复制
资源失效反馈地址
Python Flask高级编程之从0到1开发《鱼书》精品项目-51自学联盟
Python Flask高级编程之从0到1开发《鱼书》精品项目
此内容为付费资源,请付费后查看
会员专属资源
您暂无购买权限,请先开通会员
开通会员
付费资源
© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容