![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Python Flask
文章平均质量分 89
白话机器学习
10年IT从业经验,人工智能高级算法工程师、CSDN博客专家、阿里云专家、《2023博客之星马龄赛道11-15年》第一名、《2023博客之星,城市赛道》长春TOP1,CSDN付费资源项目实践专家
展开
-
Python Web开发,Flask学习——第九篇 组织你的代码
虽然我们的程序开发已经完成,但随着功能的增多,把所有代码放在 app.py 里会让后续的开发和维护变得麻烦。这一章,我们要对项目代码进行一次重构,让项目组织变得更加合理。Flask 对项目结构没有固定要求,你可以使用单脚本,也可以使用包。这一章我们会学习使用包来组织程序。原创 2023-10-30 21:00:50 · 67 阅读 · 1 评论 -
Python Web开发,Flask学习——第八篇 应用测试
在此之前,每次为程序添加了新功能,我们都要手动在浏览器里访问程序进行测试。除了测试新添加的功能,你还要确保旧的功能依然正常工作。在功能复杂的大型程序里,如果每次修改代码或添加新功能后手动测试所有功能,那会产生很大的工作量。另一方面,手动测试并不可靠,重复进行测试操作也很枯燥。基于这些原因,为程序编写自动化测试就变得非常重要。原创 2023-10-30 20:46:26 · 61 阅读 · 0 评论 -
Python Web开发,Flask学习——第七篇 用户认证
目前为止,虽然程序的功能大部分已经实现,但还缺少一个非常重要的部分——用户认证保护。页面上的编辑和删除按钮是公开的,所有人都可以看到。假如我们现在把程序部署到网络上,那么任何人都可以执行编辑和删除条目的操作,这显然是不合理的。这一章我们会为程序添加用户认证功能,这会把用户分成两类,一类是管理员,通过用户名和密码登入程序,可以执行数据相关的操作;另一个是访客,只能浏览页面。在此之前,我们先来看看密码应该如何安全的存储到数据库中。原创 2023-10-30 20:31:46 · 548 阅读 · 0 评论 -
Python Flask 定义第一个模型类以及反向生成
新建一个模块model,用于存储数据库表对应的业务模型,在编写model层的模型时,一定要忘记数据库表,重点要放在业务模型的抽象中来sqlalchemy 是一个类库,用于根据定义的model反向生成数据库表Flask_SqlAlchemy 是Flask在sqlalchemy基础上封装的一个组件。提供了更加人性化的API来操作数据库pipenv 按照。原创 2023-08-11 15:10:04 · 207 阅读 · 0 评论 -
Python Flask 阅读源码解决db.create_all的问题
对于Flask来说,文档更适合中高级的开发者,而对于新手不是特别友好。所以以不变应万变。我们可以遇到问题的时候,可以通过阅读源码的时候来解决。下面我们来看下在第三章的时候,为什么我们的flask_sqlalchemy已经注册了app对象,但是create_all方法还是需要传入app参数,不传就会报错。原创 2023-08-11 15:08:17 · 231 阅读 · 0 评论 -
Python Flask 线程进程与多线程,全局解释器锁GIL
资源是稀缺的,进程是竞争计算机资源的基本单位。一台计算机至少要有一个进程。单核CPU用眼只能执行一个应用程序吗?No,他可以在不同的应用程序直接进行切换。由于切换的时间非常短,短到人类无法感知到,所以造成了一种假象,一个进程可以同时执行多个进程。多核CPU可以真正意义上的同时运行多个进程。切换进程是计算机的一个最重要的功能-进程调度。每个算法有自己不同的操作系统来决定每个应用程序何时挂起,并切换到另一个进程。进程/线程直接的切换,对资源的开销非常大。所以这是设计一个应用程序的关键。原创 2023-08-11 15:07:17 · 1348 阅读 · 0 评论 -
python Flask中的线程隔离
Flask内部,通过维护一个dict来实现线程隔离。伪代码如下 request={thread_key1:Request1,thread_key2:Request2} 其中thread_key是线程的唯一id号,Request就是每次请求的Request对象Flask内部引入了一个werkzeug的库,这个库里有一个local模块,里面有一个Local对象,Flask内部线程隔离就是通过操作Local对象实现的。原创 2023-08-11 15:04:38 · 167 阅读 · 0 评论 -
Python Flask 发送电子邮件
我们使用flask_mail来完成电子邮件的发送。原创 2023-08-11 15:03:42 · 355 阅读 · 0 评论 -
Python Flask HttpException
我们来接着看Aborter类中的first_ot_404流程,在first_ot_404调用流程中,由于不满足__call__的前两个判断条件,最终会抛出self.mapping,其在构造函数中进行了声明""""""self.mapping是一个dict,其封装了default_exceptions,下面来看一下default_exceptions的装载,在_find_exceptions中完成。原创 2023-08-11 15:02:39 · 126 阅读 · 0 评论 -
Flask first_or_404和可调用对象
视图函数接受用户填写的email账号,如果不存在应该跳转到404界面,这个逻辑flask-sqlalchemy为我们提供了良好的封装,不需要手动去处理,只需要调用Query的first_or_404()方法即可first_or_404内部是对first函数的封装,他在获取了first的结果以后,会进行空判断,如果结果为空,则调用abort()方法,而abort()方法内部是调用了一个对象abort(404)return rvabort()'''abort(404)。原创 2023-08-11 15:02:00 · 73 阅读 · 0 评论 -
Pyhton Flask 安装与 入门基础
按照pipenv# 进入虚拟环境(需要在项目目录上执行,如果当前目录没有,则会新建)# 退出虚拟环境exit# 使用pipenv按照类库# 卸载类库# 查看按照包的依赖关系# 查看虚拟环境执行文件路径。原创 2023-08-11 14:59:22 · 130 阅读 · 0 评论