![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
flask
/乾坤未定/
念念不忘,必有回响。
展开
-
flask的优缺点和相关扩展安装包
web网站发展至今,特别是服务器端,涉及到的知识、内容,非常广泛。这对程序员的要求会越来越高。如果采用成熟,稳健的框架,那么一些基础的工作,比如,安全性,数据流控制等都可以让框架来处理,那么程序开发人员可以把精力放在具体的业务逻辑上面。使用框架的优点:稳定性和可扩展性强 可以降低开发难度,提高开发效率。在 Python 中常用的 Web 框架有flask django tornad...原创 2019-06-22 15:24:32 · 2125 阅读 · 0 评论 -
redis
一、redis概念 redis是nosql的一种数据库,是以key-value形式保存在内存中的,并且支持数据持久化存储的一种非关系型数据库。 内存中:读取和写入速度非常快 持久化存储:写入磁盘或者文件(两种本分数据的方式.aof RDB) 支持主从配置 应用场景:图片验证码,手机验证码保存在redis中,session保存在redis二、redis的启动和停...原创 2019-06-23 09:24:01 · 423 阅读 · 0 评论 -
单元测试
单元测试为什么要测试?Web程序开发过程一般包括以下几个阶段:[需求分析,设计阶段,实现阶段,测试阶段]。其中测试阶段通过人工或自动来运行测试某个系统的功能。目的是检验其是否满足需求,并得出特定的结果,以达到弄清楚预期结果和实际结果之间的差别的最终目的。测试的分类:测试从软件开发过程可以分为:单元测试 对单独的代码块(例如函数)分别进行测试,以保证它们的正确性 集成测...原创 2019-06-23 09:23:22 · 233 阅读 · 0 评论 -
flask蓝图的理解
Blueprint模块化随着flask程序越来越复杂,我们需要对程序进行模块化的处理,之前学习过python的模块化管理,于是针对一个简单的flask程序进行模块化处理举例来说:我们有一个博客程序,前台界面需要的路由为:首页,列表,详情等页面源程序app.py文件:from flask import Flaskapp=Flask(__name__)@app.rout...原创 2019-06-23 09:22:57 · 290 阅读 · 0 评论 -
flask数据库连接设置
数据库连接设置文档在 Flask-SQLAlchemy 中,数据库使用URL指定,而且程序使用的数据库必须保存到Flask配置对象的SQLALCHEMY_DATABASE_URI键中app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://root:mysql@127.0.0.1:3306/test'其他设置:# 动态追踪修改设置,...原创 2019-06-23 09:22:38 · 1222 阅读 · 0 评论 -
数据库迁移的命令
数据库迁移在开发过程中,需要修改数据库模型,而且还要在修改之后更新数据库。最直接的方式就是删除旧表,但这样会丢失数据。 更好的解决办法是使用数据库迁移框架,它可以追踪数据库模式的变化,然后把变动应用到数据库中。 在Flask中可以使用Flask-Migrate扩展,来实现数据迁移。并且集成到Flask-Script中,所有操作通过命令就能完成。 为了导出数据库迁移命令,Flask-Mig...原创 2019-06-23 09:22:04 · 1496 阅读 · 0 评论 -
ORM操作
ORMORM全拼Object-Relation Mapping. 中文意为对象-关系映射. 主要实现模型对象到关系数据库数据的映射. 比如:把数据库表中每条记录映射为一个模型对象 id name gender book 1 孙悟空 True 西游记 2 白骨精 False 西游记 3 曹操 True ...原创 2019-06-23 09:24:15 · 610 阅读 · 0 评论 -
CSRF攻击方式和防范
CSRFCSRF全拼为Cross Site Request Forgery,译为跨站请求伪造。 CSRF指攻击者盗用了你的身份,以你的名义发送恶意请求。 包括:以你名义发送邮件,发消息,盗取你的账号,甚至于购买商品,虚拟货币转账...... 造成的问题:个人隐私泄露以及财产安全。CSRF攻击示意图客户端访问服务器时没有同服务器做安全验证防止 CSRF 攻击步骤在客...原创 2019-06-23 09:21:43 · 716 阅读 · 0 评论 -
flask控制代码块案例
准备数据# 只显示4行数据,背景颜色依次为:黄,绿,红,紫my_list = [ { "id": 1, "value": "我爱工作" }, { "id": 2, "value": "工作使人快乐" }, { "id": 3, "value": "沉迷于...原创 2019-06-22 16:25:03 · 331 阅读 · 0 评论 -
flask中过滤器的使用
添加列表反转的过滤器方式一通过调用应用程序实例的 add_template_filter 方法实现自定义过滤器。该方法第一个参数是函数名,第二个参数是自定义的过滤器名称:def do_listreverse(li): # 通过原列表创建一个新列表 temp_li = list(li) # 将新列表进行返转 temp_li.reverse() r...原创 2019-06-22 16:22:02 · 562 阅读 · 0 评论 -
flask的Flask-Script 扩展
代码实现安装 Flask-Script 扩展pip install flask-script集成 Flask-Scriptfrom flask import Flaskfrom flask_script import Managerapp = Flask(__name__)# 把 Manager 类和应用程序实例进行关联manager = Manager(app)@...原创 2019-06-22 16:03:46 · 480 阅读 · 1 评论 -
flask请求钩子的用法
请求勾子在客户端和服务器交互的过程中,有些准备工作或扫尾工作需要处理,比如:在请求开始时,建立数据库连接; 在请求开始时,根据需求进行权限校验; 在请求结束时,指定数据的交互格式;为了让每个视图函数避免编写重复功能的代码,Flask提供了通用设施的功能,即请求钩子。请求钩子是通过装饰器的形式实现,Flask支持如下四种请求钩子:before_first_request 在...原创 2019-06-22 15:58:18 · 621 阅读 · 0 评论 -
flask正则转换器
正则匹配路由 给路由传参示例 有时我们需要将同一类 URL 映射到同一个视图函数处理,比如:使用同一个视图函数来显示不同用户的个人信息。# 路由传递参数@app.route('/user/<user_id>')def user_info(user_id): return 'hello %s' % user_id路由传递的参数默认当做 string 处理...原创 2019-06-22 15:56:13 · 469 阅读 · 0 评论 -
cookie和session的用法和区别
设置cookie和过期时间@app.route('/cookie')def set_cookie(): response = make_response('hello world') response.set_cookie('username', 'itheima', max_age=3600) return response获取cookiefrom fl...原创 2019-06-22 15:53:35 · 188 阅读 · 0 评论 -
flask装饰器路由具体实现梳理
装饰器路由具体实现梳理Flask有两大核心:Werkzeug和Jinja2- Werkzeug实现路由、调试和Web服务器网关接口- Jinja2实现了模板。Werkzeug是一个遵循WSGI协议的python函数库- 其内部实现了很多Web框架底层的东西,比如request和response对象;- 与WSGI规范的兼容;支持Unicode;- 支持基本的会...原创 2019-06-22 15:39:51 · 252 阅读 · 0 评论 -
flask的环境配置
虚拟环境为什么要搭建虚拟环境?在开发过程中, 当需要使用python的某些工具包/框架时需要联网安装 比如联网安装Flask框架flask-0.10.1版本 sudo pip install flask==0.10.1提示:使用如上命令, 会将flask-0.10.1安装到/usr/local/lib/python2.7/dist-packages路径下 问题:如果在一台...原创 2019-06-22 15:32:48 · 1030 阅读 · 0 评论 -
git的应用
一、git的概念1、git:分布式的管理系统 分布式:在客户端和服务端都具有版本控制能力2、git作用:管理源代码 1、方便多人协同开发 2、方便版本控制 准备上线 代码挂了。以最快速度回到上一个版本3、仓库:在我们文件中如果出现.git 标记着代码仓库已经建立 .git 同级目录下的文件都会被管理起来。二、git操...原创 2019-06-23 09:23:43 · 716 阅读 · 0 评论