Flask中主动抛出异常,统一异常处理

在开发时,后台出现异常,但不想把异常显示给用户或者要统一处理异常时,可以使用abort主动抛出异常,再捕获异常返回美化后的页面。主动抛出异常:@user.route('/testError')def testError():    print ('testError')    abort(404)使用装饰器errorhandler捕获异常:@user.errorhandler(404)def er...

阅读全文

Flask中使用logging模块记录日志

之前有写一个logging模块的使用方法的笔记:http://sulao.cn/post/615.html,其实在flask中也是使用的这个模块,我们一起来看看简单的使用方法#!/usr/bin/python3#coding:utf-8from flask import Flask,requestimport loggingapp = Flask(__name__)@app.route('/')def index(): &nbs...

阅读全文

Flask生成下载文件

最近遇到一个需求,就是要生成csv或者是excel,然后提供下载,当时不是提前就备好了下载列表,而是需要根据需求来生成,之前也写过一个类似的php的笔记:http://sulao.cn/post/399.html好了,我们还是来看看flask的下载文件是如何实现的1.通过send_from_directory方法返回真实的文件from flask import Flask,request,send_from_directoryimport csvimport json@tools.route...

阅读全文

Flask使用Layui实现下拉加载

之前用thinkphp+layui写过,随后会补上php版的下拉加载,当然使用的是layui模块化js框架,无需自己编写,只需要按照layui接口的格式返回数据即可,我们看代码吧Flask接口#!/usr/bin/python3#coding:utf-8__author__ = 'yang.su''''手机版'''from flask import Flask,Blueprint,request,jsonify,rende...

阅读全文

Flask全局对象g使用的简单例子

其实全局变量g是一个比较简单的东西,个人智商可能比较低,看了半天还是在下班的路上才看懂这个到底是啥意思,可能下班清醒开窍了吧,百度翻了几页总结的一句话,g是在一次请求中使用,下面是我的理解我们在flask一个请求内,也许是是一个具体视图函数内的请求,g变量是有效的,那么你设置一般变量也是可以的啊,为啥要专门设置一个全局变量呢,其实我们在这个视图函数内使用其他函数的时候,其他函数如果是有参数的话,需要我们传递进去的,但是使用了全局变量g的话,相当于global var在这次请求了注册了一个全局变量,那么他的作用域,使用期限都仅限于此次的请求,在这...

阅读全文

Flask中session的使用方法

Flask中使用session非常简单,只需要简单导入模块就可以开始使用了,我们直接来看例子吧。#!/usr/bin/python3#coding:utf-8from flask import Flask,sessionapp = Flask(__name__)app.config['SECRET_KEY'] = 'merci'@app.route('/')def index(): &n...

阅读全文

Flask使用flask_mail模块发送邮件实例

之前写过一个python使用SMTP服务发送邮件的笔记,地址是http://sulao.cn/post/598.html,flask中也有相关的模块,我们只需要简单的安装配置即可使用首先pip安装模块pip install flask_mail接着直接上我的实例代码吧#!/usr/bin/python3#coding:utf-8from flask import Flaskfrom flask_mail import Mail,Messageapp ...

阅读全文

Flask使用Flask-SQLAlchemy操作MySQL

在Flask-SQLAlchemy中,查询操作是通过query对象操作数据。最基本的查询是返回表中所有数据,可以通过过滤器进行更精确的数据库查询。数据库会话也可以回滚,通过db.session.rollback()方法,实现会话提交数据前的状态。之前写了一个sqlalchemy的对象关系映射操作mysql的教程:http://sulao.cn/post/610.html,现在更新一个flask下的flask_qlalchemy,用起来其实是和sqlalchemy一样的,只是有些微区别,整体用起来更加简单,主要是我用的vscode,用起来静态检查老是报错,...

阅读全文

Flask使用阿里云OSS对象存储保存附件

当附件文件数据太大太多的时候我们需要开始考虑使用云存储,云存储的出现,极大的解决了原有硬件资源无法满足存储场景的需求,即使你的规模达到P级,也无需担心存储的瓶颈和读取的缓慢,这里我们就使用flask框架使用阿里云的OSS将文件保存到云端,下面是操作方法1)首先我们安装阿里云的OSS模块pip install oss22)去官网开通阿里云对象存储并创建buket这里有几个地方需要注意,一个是创建BUKET的时候属性是公共读,如果你是要提供存储公开给大家读取的话就是这样使用API的时候注意EndPoint填写外网的,如果你是使用阿里云的E...

阅读全文

Flask使用Layui构建文件异步上传的方法

上传是是一个应用中不可或缺的功能,之前用thinkphp写过一个,这次使用Flask框架也写了一个,记录下代码,方便下次自己查阅,layui上传模块还比较简单,主要是接口返回的格式要按照他的要求来规范,不然就算上传成功也会提示上传接口异常,下面看我的事例代码首先是前端的代码:<div class="layui-input-inline" style="width: 100px;">    <button type=...

阅读全文