Pro*_*ica 6 python sqlalchemy flask flask-sqlalchemy
基本上,我试图在Flask应用程序(用于REST API)和非Flask API 之间共享尽可能多的数据库层代码.
在纯Python API(打算在非Web Python应用程序中导入)和REST API Flask守护程序中使用相同的Flask-SQLAlchemy层是一个好主意吗?
我想另一种表达方式,虽然我不确定术语,"我如何最好地在Flask应用程序和单独的Python导入库之间共享数据库模型?"
使用案例:我们有一个包含许多表的大型数据库,并希望构建REST API(用于客户访问)和Python导入库(用于高性能内部工具)以访问数据库,但当然在它们之间共享尽可能多的代码尽可能.
有关:
Flask-SQLAlchemy
在 Web 上下文之外使用模型是创建 Flask 应用程序并调用的问题
app.test_request_context().push()
Run Code Online (Sandbox Code Playgroud)
这里的重点是您将如何处理“非网络”库。如果在需要使用该库时安装整个 Flask 库没有问题,那么以这种方式使用它就完全没有问题。
如果您计划在库数据访问代码中进行性能改进,例如使用不同的会话、并发性等,那么您正在修改初始代码,因此这是一个完全不同的场景。在这种情况下,纯 SQLAlchemy 方法可能会更好,但这实际上取决于两种模式之间的差异。
通常模型附带方法,使用 2 种不同的 ORM 模式(Flask-SQLAlchemy
包装模型和纯SQLAlchemy
)意味着复制代码。
归档时间: |
|
查看次数: |
830 次 |
最近记录: |