首页 > 解决方案 > 使用 SQLAlchemy 在数据库插入上创建和删除文件

问题描述

我正在使用 flask-sqlalchemy 为我的烧瓶应用程序创建对象/数据库条目。每个条目都有对应的文件和目录,我目前在创建数据库条目之前以不同的方法创建它们,并且在删除数据库条目后手动删除它们,类似于这样:

init_files(name, some, parameters)
thing_to_insert = SomeModel(name, some, parameters)
db.session.add(thing_to_insert)
db.session.commit()

现在我想以更有条理的方式来做这件事,所以我偶然发现了 sqlalchemy 事件,例如“before_insert”和“after_delete”。这是处理此类要求的正确(和理想)方式吗?如果文件创建失败,是否有办法取消插入,或者如果有数据库回滚,是否可以再次删除文件?

标签: pythonflasksqlalchemyflask-sqlalchemy

解决方案


推荐阅读