当前位置:网站首页>Flask搭建api服务-SQL配置文件
Flask搭建api服务-SQL配置文件
2022-07-07 15:34:00 【python与大数据分析】
续前文(Flask搭建api服务)把SQL语句以字典的方式存储起来,配置和代码没有分割开来,一直纠结如何处理配置文件中多行配置项的问题,查了半天,其实这个问题不存在的,只要在配置项中跨行部分前面追加一个空格即可。
ini是传统的主流配置文件。
ini支持的数据类型有限,将所有的值都默认成字符串(字符串最外面不需要添加引号)。
ini配置文件必须使用[](section)进行分组,每一个键称为option。
1、追加配置文件SQL.ini
[KPIDB]
sql1 = select a.*
from kpi_value a
where a.kpicode in ('01010101','02010101','03010101')
and a.datelevel='01'
and a.regionlevel='02'
sql2 = select a.*
from kpi_value a
where a.kpicode in ('01010101','02010101','03010101')
and a.datelevel='01'
and a.regionlevel='02'
and a.datecode>=:begindate and a.datecode<=:enddate
sql3 = select a.*
from kpi_value a
and a.datelevel='01'
and a.regionlevel='02'
and a.datecode>=:begindate and a.datecode<=:enddate
and a.kpicode in :kpicode
2、在app.py中追加一个configparser读取
import configparser
config = configparser.ConfigParser()
config.read('SQL.ini',encoding="utf-8-sig")
DBSECTION='KPIDB'
3、在各个路由函数中使用config项替代原来的字典方式
# sqltext = sqldict[sqlid]
sqltext = config[DBSECTION][sqlid]
pycharm读取ini配置文件,使用自带的configparser模块。
具体步骤如下:
1、导入ConfigParser类;
2、实例化ConfigParser;
3、使用read()方法打开并读取文件内容;
4、使用get()方法,根据section和option获取指定的值。
最后,谢谢关注,谢谢支持!
边栏推荐
- LocalStorage和SessionStorage
- Seaborn data visualization
- [designmode] facade patterns
- Skimage learning (2) -- RGB to grayscale, RGB to HSV, histogram matching
- 浅谈 Apache Doris FE 处理查询 SQL 源码解析
- LeetCode 1626. 无矛盾的最佳球队 每日一题
- 面向接口编程
- AI来搞财富分配比人更公平?来自DeepMind的多人博弈游戏研究
- LeetCode 300. Daily question of the longest increasing subsequence
- 射线与OBB相交检测
猜你喜欢
Vs2019 configuration matrix library eigen
Horizontal and vertical centering method and compatibility
正在准备面试,分享面经
掌握这个提升路径,面试资料分享
最新2022年Android大厂面试经验,安卓View+Handler+Binder
SIGGRAPH 2022最佳技术论文奖重磅出炉!北大陈宝权团队获荣誉提名
skimage学习(3)——使灰度滤镜适应 RGB 图像、免疫组化染色分离颜色、过滤区域最大值
字节跳动Android面试,知识点总结+面试题解析
Opencv personal notes
Shallow understanding Net core routing
随机推荐
LeetCode 1981. 最小化目标值与所选元素的差 每日一题
Opencv personal notes
Flask搭建api服务-生成API文档
LeetCode 213. 打家劫舍 II 每日一题
预售17.9万,恒驰5能不能火?产品力在线,就看怎么卖
Master this set of refined Android advanced interview questions analysis, oppoandroid interview questions
网关Gateway的介绍与使用
谈谈 SAP 系统的权限管控和事务记录功能的实现
LeetCode 1186. Delete once to get the sub array maximum and daily question
LeetCode 1031. Maximum sum of two non overlapping subarrays
Pycharm IDE下载
低代码(lowcode)帮助运输公司增强供应链管理的4种方式
Lowcode: four ways to help transportation companies enhance supply chain management
[PHP] PHP interface inheritance and interface multi inheritance principle and implementation method
整理几个重要的Android知识,高级Android开发面试题
LeetCode 1654. 到家的最少跳跃次数 每日一题
Vs2019 configuration matrix library eigen
[medical segmentation] attention Unet
LeetCode 312. Poke balloon daily
ORACLE进阶(六)ORACLE expdp/impdp详解