Flask框架
文章平均质量分 88
发布个人对Flask的一些总结和思考
stone0823
财务、SAP以及编程
展开
-
群晖NAS通过docker部署Flask(续)
本篇继续介绍在群晖docker上部署flask的方法。原创 2022-10-03 22:18:35 · 1858 阅读 · 0 评论 -
群晖NAS通过docker部署Flask
在Docker中部署应用的基本原理Application 运行于系统之上,也可以运行在虚拟机和容器中,下图简要说明了这种逐步演变的趋势:最开始,Application 直接运行在物理机上面。有了虚拟机之后,application 可以部署在虚拟机上,而 Docker 之类的容器出现,application 可以部署在 docker 中。容器与虚拟机比较,更加轻量。虚拟机是计算机系统的仿真,每个 VM 不仅运行操作系统的完整副本,还运行操作系统需要运行的所有硬件的虚拟副本,因此可能占用大量的系统资源。而原创 2021-10-24 12:46:59 · 2283 阅读 · 0 评论 -
werkzeug实现WSGI Application
WSGI 为 Web Server Gateway Inferface 的缩写,是 **Python Web 框架(或应用程序)与 Web 服务器 (Web Server) 之间通讯的规范**,本质上是定义了一种 Web server 与 Web application **解耦**的规范。比如 Flask 就是运行在 WSGI 协议之上的 web 框架。本文基于 werkzeug 实现 web app,包括路由、请求响应的封装和模板的渲染。原创 2020-05-31 22:35:03 · 410 阅读 · 0 评论 -
Flask自定义转换器要点
本篇通过两个示例,讲解 Flask 自定义转换器的要点:1、如果需要校验 URL 中 Path 的规则,在自定义转换器的 `__init__()` 方法中改写 (override)BaseConverter 的 `regex` 属性。或者在转换器所在类中直接对 `regex` 属性赋值,如 IntegerConverter2、如果要对 URL 中的 Path 值传给 view function 时进行改变,改写 (override) 自定义转换器的 `to_python()` 方法原创 2020-05-03 17:45:24 · 386 阅读 · 0 评论 -
深入理解Flask路由 (3) - 动态 url 及转换器
讲解动态 url 和转换器的用法及原理原创 2020-04-26 19:17:19 · 855 阅读 · 0 评论 -
深入理解Flask路由(2)- werkzeug 路由系统
本篇是系列中的第二篇,介绍 werkzeug Rule 和 Map 的实现机制,理解路由的构建.原创 2020-04-05 08:26:39 · 1404 阅读 · 0 评论 -
深入理解Flask路由的实现机制
本篇介绍 Flask 路由的基本用法,并且通过部分源代码深入浅出阐述 Flask 路由的实现机制。原创 2020-03-27 15:57:12 · 2478 阅读 · 0 评论 -
Flask的request是从哪里来的
从一个简单的 Flask 示例开始。from flask import Flask, requestapp = Flask(__name__)@app.route('/')def index(): print(request.headers) return 'Hello World!'if __name__ == '__main__': app.run()...原创 2020-02-16 15:22:27 · 1057 阅读 · 0 评论 -
Flask 实现 Rest API (04) - 基于Flask-SqlAlchemy将查询结果转换为json
在 Flask 实现 Rest API (02) - 查询结果转换为 json 字符串 这篇文章中,介绍了基于原生 CRUD 将查询结果转为 json 格式的方法。本篇接着介绍使用 Flask-SqlAlchemy 时,如何将查询结果转换为 json 格式。过程是先将查询的结果转为 dict/list,然后将 dict/list 转为 json,dict/list 转 json 是 Python ...原创 2020-01-12 15:06:39 · 3712 阅读 · 1 评论 -
在 Windows 平台部署 Flask
之前写过一篇博文:如何在 ,介绍了在 Linux 中使用 nginx + uwsgi 部署 Flask 的方法。由于平时工作主要在 Windows 系统上,Flask 本身带的 web server 性能太弱,所以考虑是否可以在 Windows 平台基于 nginx 部署 Flask 应用。网上找到解决方案:Flask + Tornado...原创 2019-12-04 16:25:50 · 2360 阅读 · 0 评论 -
Instance of 'SQLAlchemy' has no 'Column' member 错误
使用 Visual Studio Code 开发 Flask 程序的时候,一直提示 Instance of 'SQLAlchemy' has no 'Column' member 错误,同样的代码在其它的 IDE 就没有问题,在网上查了一下,判断是 pylint 的原因。pylint 是一个 Python 源代码检查和高亮的工具,类似的还有 flake8 等。解决方法:关闭 pylint,启用 ...原创 2019-05-23 21:06:49 · 6665 阅读 · 1 评论 -
Flask 实现导航栏
使用 Bootstrap使用 Bootstrap 实现导航非常简单。鉴于前台界面的导航并不在 Flask 技术体系中,所以本文不打算对 Bootstrap 的细节进行探讨,仅演示基本要点。大家可自行参考下面的文章:Bootstrap 导航栏Bootstrap4 导航栏比如,一个最简单的 Flask 程序中,下面的代码就实现了一个漂亮的导航栏:<!DOCTYPE html>...原创 2019-01-11 15:10:50 · 6245 阅读 · 0 评论 -
Flask 如何使用 Bootstrap 来美化页面?
本篇接着《Flask 极简 CRUD 操作》继续讲解怎样让页面变得漂亮。在《Flask 极简 CRUD 操作》中,我们实现了基本的 CRUD 操作,如果运行一下,我们发现页面长得像这个样子:我们可以使用 Bootstrap 这个著名的前端框架,让 web 的开发更迅速和简单。回忆一下,我们当时写的 index.html 代码如下:&lt;!DOCTYPE html&gt;&lt;html ...原创 2018-12-28 16:31:29 · 10486 阅读 · 0 评论 -
Flask-Login 让实现登录功能变简单
Web 的登录管理是一个比较复杂的过程,之前写过一篇基于 Rest API的登录实现(在这里),最近看到一篇思诚之道写基于 Flask-Login 的实现方法,不由赞叹,示例和讲述写得太棒了,基本是一看就懂,写作方法值得自己好好学习。本文是本人在学习这篇博客时的笔记。Flask-Login 帮我们做了哪些事?Flask-Login 通过 提供 user session,提供登录的常见任务,比...原创 2018-12-21 15:49:01 · 4855 阅读 · 1 评论 -
Flask 极简 CRUD 操作
一个简单的 CRUD 操作基本可以看出某个开发框架和平台的特点。Flask 作为一个微框架,在开发一些小型应用的时候非常合适。本文试图从开发一个简单的 Notebook 应用,说明 Flask 开发的基本模式。除 Flask 模块外,本次用到以下插件:Flask-SQLAlchemy (基于 SQLAlchemy 的扩展,操作数据库)Flask-WTF (一个表单插件,让 HTML 表单编写...原创 2018-12-18 22:47:37 · 2420 阅读 · 0 评论 -
Flask-SQLAlchemy CRUD
当我们习惯 Flask-SQLAlchemy 对数据库进行 CRUD 操作后,就很难再回到基于 原生 SQL 的代码编写了。我们先来看 Read 操作。用实际的例子来说明用法,数据还是之前经常用到的 emp_master ,基于上一篇 Flask 工程的文件结构,在 models.py 中定义的 Class 如下:class EmpMaster(db.Model): emp_id =...原创 2018-12-15 18:52:42 · 734 阅读 · 0 评论 -
Flask-SQLAlchemy 代码模块化
本文主要介绍把 Flask-SQLAlchemy 代码进行模块化划分的时候,需要注意的问题。如果把 Flask-SQLAlchemy 的代码全部放在一个文件中,示例代码如下:from flask import Flaskfrom flask_sqlalchemy import SQLAlchemyimport osapp = Flask(__name__)app.config['SQ...原创 2018-12-13 20:46:33 · 895 阅读 · 0 评论 -
Flask 实现 Rest API (03) - 用户登陆
Web 服务是无状态的,那么对于客户端提交的请求,服务器如何判断请求的合法性呢?比如只能登陆成功的用户,服务器才按要求返回数据。本文提供一种利用 会话 (session) 机制实现保存用户登录信息的方法。会话是客户端登录到服务器并注销的时间间隔,对需要在此会话中存储的数据存放在在服务器上的临时目录中。服务器端与每个客户端的会话都有一个分配的会话ID (session ID)。利用 sess...原创 2018-10-05 14:37:19 · 3743 阅读 · 0 评论 -
Flask 实现 Rest API (02) - 查询结果转换为 json 字符串
Rest API 以 json 格式对 Request 进行响应。结果集是如何转换成 json 呢?上一篇我们是这样做的:# 首先得到一个 dictitems = [dict((curr.description[i][0], value) for i, value in enumerate(row)) for row in curr.fetchall()]# 然后通过...原创 2018-10-04 17:21:23 · 3221 阅读 · 0 评论 -
Flask 实现 Rest API (01)
Restful API 已经大行其道,因为我经常需要需要做基于 Restful API 的测试,为了日常测试的方便,用 Flask 来实现 Restful API 接口。没有使用 flask-restful 插件,手动实现。后期再用 flask-restful 插件来改造。通过这种方式,可以更深刻理解插件解决什么问题,也可以看看插件是怎样更优雅地实现的,而不仅仅是用别人的工具。数据库表的结...原创 2018-09-02 19:04:59 · 5382 阅读 · 3 评论 -
如何在 CentOS 6.5 上部署 Flask
在 CentOS 6.5 中部署 Flask平时开发的时候,Flask 自带的 Web Server 可以满足需要,但是部署到服务器上则需要专门的符合 WSGI 协议的 Web Server。一种常见的组合是 Nginx + uWSGI。网上的教程挺多的,但大多也只是贴命令,对于关键点未做说明。本文希望能完整介绍 Flask 在 CentOS 上的部署,并且突出几个关键要点。安装 Py...原创 2018-04-17 10:57:32 · 1343 阅读 · 0 评论