flask依据现有的库表快速生成flask实体类
flask依据现有的库表快速生成flask实体类
在实际开发过程中,flask的sqlalchemy对应的model类写起来重复性较强,如果表比较多会比较繁琐,这个时候可以使用 flask-sqlacodegen 来快速的生成model程序或者py文件,以下是简单的示例,可以作为参考
- 以下建议先在一个干净全新的python3.6.8环境下使用,可以避免环境引起的错误
command not found: sqlacodegen
- 安装命令
pip install Flask-SQLAlchemy sqlacodegen
pip install pymysql
- 创建一个flask应用程序,实例化SQLAlchemy,配置相关的数据库连接信息
from flask import Flask
from flask_sqlalchemy import SQLAlchemyapp = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://username:password@localhost/database'
db = SQLAlchemy(app)
注意⚠️:将 账户、密码、IP等信息 替换为实际的数据库连接 URI
- 运行 Flask 应用程序,使数据库模型类与数据库表进行关联。确保在运行应用程序之前,数据库已经创建并准备好。
比如:你要转化表query_users的对应映射类,需要提前创建好query_users表
输入 sqlacodegen 出现以下信息表示配置成功

- 打开命令行终端,进入你的项目目录,并执行以下命令来生成模型类文件:
sqlacodegen your_database_uri > models.py
注意⚠️:将 ‘your_database_uri’ 替换为实际的数据库连接 URI
-
打开 models.py 文件,你将看到由 sqlacodegen 自动生成的模型类。这些类将与你的数据库表相对应。你可以根据需要对其进行进一步的自定义和调整。
-
步骤 4 中的命令是把该库底下的所有表都转化为了
Flask模型类,如果想针对某一个表进行转化可以增加参数使用以下命令
–tables 指定要转化的表名
–outfile 指定保存的py文件路径
sqlacodegen --tables api_test --outfile models.py your_database_uri
- 如果不想生成文件,直接在终端中打印代码,可以去掉
--outfile输出文件命令
sqlacodegen your_database_uri --tables api_test
以上就是使用 flask-sqlacodegen 将mysql中对应表转化为 flask 模型类 的所有内容
感谢观看,希望对读者有所帮助,有疑问可以评论,不定时回复
相关文章:
flask依据现有的库表快速生成flask实体类
flask依据现有的库表快速生成flask实体类 在实际开发过程中,flask的sqlalchemy对应的model类写起来重复性较强,如果表比较多会比较繁琐,这个时候可以使用 flask-sqlacodegen 来快速的生成model程序或者py文件,以下是简单的示例&a…...
.NET6 开发一个检查某些状态持续多长时间的类
📢欢迎点赞 :👍 收藏 ⭐留言 📝 如有错误敬请指正,赐人玫瑰,手留余香!📢本文作者:由webmote 原创📢作者格言:新的征程,我们面对的不仅仅是技术还有人心,人心不可测,海水不可量,唯有技术,才是深沉黑夜中的一座闪烁的灯塔 !序言 在代码的世界里,时常碰撞…...
链表K个节点的组内逆序调整问题
链表K个节点的组内逆序调整问题 作者:Grey 原文地址: 博客园:链表K个节点的组内逆序调整问题 CSDN:链表K个节点的组内逆序调整问题 题目描述 LeetCode 25. Reverse Nodes in k-Group 本题的 follow up 是: Fol…...
安卓隐私指示器学习笔记
最近了解到Google 在Android12上新增了权限指示器,可以在信号栏的右侧显示当前访问录音机和Camera的应用,点击后可以跳转到相应应用的权限界面,消费者可以控制权限的开启和关闭。国内手机厂商最近几年都在增加隐私看板供能,消费者…...
【Jenkins】jenkins发送邮件报错:Not sent to the following valid addresses:
jenkins报错未能发送邮件到指定邮箱 注意:这是在系统配置中修改 在系统配置》邮件通知中添加配置信息 注意:这个是在项目的配置下修改 配置完成后,重新执行发送邮件成功!!!...
CSS3制作3D爱心动画
1、什么是CSS css,即层叠样式表的简称,是一种标记语言,有浏览器解释执行用来使页面变得更美观。 2、选择器 css3中新增了一些选择器,如下: 3、新样式 边框 css3新增了三个边框属性,分别是: bo…...
Python Opencv实践 - 全景图片拼接stitcher
做一个全景图片切片的程序Spliter 由于手里没有切割好的全景图片资源,因此首先写了一个切片的程序spliter。 如果有现成的切割好的待拼接的切片文件,则不需要使用spliter。 对于全景图片的拼接,需要注意一点,各个切片图片之间要有…...
echarts 几千条分钟级别在小时级别图标上展示
需求背景解决效果ISQQW代码地址strategyChart.vue 需求背景 需要实现 秒级数据几千条在图表上显示,(以下是 设计图表上是按小时界别显示数据,后端接口为分钟级别数据) 解决效果 ISQQW代码地址 链接 strategyChart.vue <!--/** * author: liuk *…...
操作系统的中断与异常(408常考点)
为了进行核心态和用户态两种状态的切换,引入了中断机制。 中断是计算机系统中的一种事件,它会打断CPU当前正在执行的程序,转而执行另一个程序或者执行特定的处理程序。中断可以来自外部设备(如键盘、鼠标、网络等)、软…...
linux下的工具---vim
一、了解vim 1、vim是linux的开发工具 2、vi/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。例如语法加亮,可视化操作不仅可以在终端运行…...
代码随想录算法训练营第六十天|84. 柱状图中最大的矩形
LeetCode 84. 柱状图中最大的矩形 题目链接:84. 柱状图中最大的矩形 - 力扣(LeetCode) 和接雨水还挺像的。 代码: #python class Solution:def largestRectangleArea(self, heights: List[int]) -> int:heights.insert(0, 0…...
P14 C++局部静态变量static延长生命周期
目录 01 前言 02 变量的作用域与生命周期 2.1 什么是作用域: 2.2 什么是变量的生命周期: 03 局部静态 3.1非静态变量例子 3.2静态变量例子 04 全局变量 05 后话 01 前言 在前几期里,我们了解了static关键字在特定上下文中的含义。 …...
C语言:写一个函数,求字符串的长度,在main函数中输入字符串并输出其长度(指针)
分析: 在程序中,定义一个函数 fix,该函数使用指针变量来访问字符串中的每个字符,并计算出字符串的长度。fix 函数的参数为指向 char 类型的指针变量 p,表示需要计算长度的字符串。 在主函数 main 中,定义一…...
CentOS7安装Docker运行环境
1 引言 Docker 是一个用于开发,交付和运行应用程序的开放平台。Docker 使您能够将应用程序与基础架构分开,从而可以快速交付软件。借助 Docker,您可以与管理应用程序相同的方式来管理基础架构。通过利用 Docker 的方法来快速交付,…...
单片机调试技巧--栈回溯
在启动文件中修改 IMPORT rt_hw_hard_fault_exceptionEXPORT HardFault_Handler HardFault_Handler PROC; get current contextTST lr, #0x04 ; if(!EXC_RETURN[2])ITE EQMRSEQ r0, msp ; [2]0 > Z1, get fault context from h…...
分布式锁之基于redis实现分布式锁(二)
2. 基于redis实现分布式锁 2.1. 基本实现 借助于redis中的命令setnx(key, value),key不存在就新增,存在就什么都不做。同时有多个客户端发送setnx命令,只有一个客户端可以成功,返回1(true);其他…...
python中%s的用法(字符串变量赋值办法),长字符串换行办法
参考: http://wap.mobiletrain.org/about/BBS/142752.html https://blog.csdn.net/PolarisRisingWar/article/details/131134627 https://baijiahao.baidu.com/s?id1756094563884490493&wfrspider&forpc 字符串变量赋值 "Hello, %s. Today is %s.&q…...
【Mybatis】预编译/即时sql 数据库连接池
回顾 Mybatis是一个持久层框架.有两种方式(这两种方式可以共存) 1.注解 2.xml 一.传递参数 以使用#{} 来接受参数为例 (以上两种方式一样适用的) 1)传递单个参数 #{} 可以为任意名称 2)多个参数 默认的参数名称就是接口方法声明的形参 3)参数为对象 默认给每个对象的每个属性都…...
物联网AI 无线连接学习之WiFi基础篇 802.11协议发展
学物联网,来万物简单IoT物联网!! 前言 随着物联网行业不断发展,WiFi技术的发展在其中起着非常关键的作用,也是我们日常生活中使用非常广泛的无线网络技术之一,现在我们随便买一个家用电子产品,…...
FreeRTOS-队列Queue
队列Queue 队列Queue可以用在“任务到任务”、“任务到中断”、“中断到任务”直接传输信息。 队列的阻塞访问(可指定超时时间) 只要知道队列的句柄,任务、ISR都可以读、写该队列。任务读写队列时,如果读写成功了就马上进入就绪态…...
自学渗透测试的第十天(HTTP进阶与Burp Suite基础)
4.2 HTTP进阶与Burp Suite基础(第10天)核心目标深化HTTP/HTTPS协议理解:掌握Cookie机制、会话管理、同源策略、CORS、HTTP方法的安全含义,以及常见请求头/响应头的安全影响。精通Burp Suite核心功能:熟练配置和使用Bur…...
Kook Zimage真实幻想Turbo常见问题解决:生成全黑图?显存不足?看这篇就够了
Kook Zimage真实幻想Turbo常见问题解决:生成全黑图?显存不足?看这篇就够了 你是不是已经迫不及待地部署好了Kook Zimage真实幻想Turbo,准备大展身手创作奇幻大片,结果一运行,要么生成一张全黑的图片&#…...
保姆级教程:用Docker Compose和Nginx给内网Nexus仓库上HTTPS(自签证书避坑指南)
内网Nexus私有仓库HTTPS全栈实战:从Docker部署到证书信任闭环 当开发团队规模超过10人时,私有制品仓库就成了刚需。上周帮某金融客户部署内网Nexus时,发现Maven 3.8.1强制HTTPS的策略让很多工程师措手不及——内网没有公网域名,Le…...
SEO_新手必学的搜索引擎优化入门教程
SEO:新手必学的搜索引擎优化入门教程 在现代互联网时代,拥有一个高质量的网站是必不可少的,但仅有一个好的网站还远远不够。为了让更多的人能看到你的网站,搜索引擎优化(SEO)显得尤为重要。SEO是提高网站在搜索引擎结…...
效率提升实测:OpenClaw+百川2-13B-4bits将周报时间从2小时缩短到15分钟
效率提升实测:OpenClaw百川2-13B-4bits将周报时间从2小时缩短到15分钟 1. 为什么我要折腾自动化周报 每周五下午,我的日历上总有一个雷打不动的"周报时间"。这个两小时的"酷刑"包括:翻遍Git提交记录、整理会议纪要碎片…...
提升SARscape 5.6处理效率:详解General Parameters与OpenCL加速设置(含笔记本独显启用技巧)
SARscape 5.6性能调优实战:从参数配置到硬件加速的完整指南 当处理Sentinel-1时序数据时,你是否经历过漫长的等待?面对TB级SAR数据,合理的参数配置和硬件加速能带来惊人的效率提升。本文将深入解析那些被大多数用户忽略的性能优化…...
PyTorch Playground量化评估报告:不同bit宽度的精度损失分析
PyTorch Playground量化评估报告:不同bit宽度的精度损失分析 【免费下载链接】pytorch-playground Base pretrained models and datasets in pytorch (MNIST, SVHN, CIFAR10, CIFAR100, STL10, AlexNet, VGG16, VGG19, ResNet, Inception, SqueezeNet) 项目地址: …...
如何选择最适合的自动化技术栈:FlaUI与UIA2/UIA3深度解析
如何选择最适合的自动化技术栈:FlaUI与UIA2/UIA3深度解析 【免费下载链接】FlaUI UI automation library for .Net 项目地址: https://gitcode.com/gh_mirrors/fl/FlaUI FlaUI作为一款强大的.NET UI自动化库,提供了对UIA2和UIA3两种技术标准的支持…...
ERNIE-4.5-0.3B-PT企业落地场景:基于vLLM的轻量级智能问答助手搭建
ERNIE-4.5-0.3B-PT企业落地场景:基于vLLM的轻量级智能问答助手搭建 1. 项目概述与价值 智能问答助手已经成为企业提升服务效率和用户体验的重要工具。传统方案往往面临部署复杂、资源消耗大、响应速度慢等问题。今天介绍的基于vLLM部署的ERNIE-4.5-0.3B-PT模型&am…...
Phi-3-mini-4k-instruct-gguf真实案例:制造业设备说明书故障排查话术生成
Phi-3-mini-4k-instruct-gguf真实案例:制造业设备说明书故障排查话术生成 1. 场景痛点分析 在制造业设备维护领域,技术工程师每天需要处理大量设备故障咨询。传统方式存在几个典型问题: 响应效率低:工程师需要反复查阅厚重的纸…...
