xav*_*ier 6 python sqlalchemy flask-sqlalchemy
我来自 EntityFramework。我习惯于创建数据库、运行 EF,并为每个数据库对象(通常是表)生成一堆类文件,其中填充了属性(通常是列)。
按照这个基本使用示例,我已经弄清楚如何使用反射在内存中生成模型。但是如何将模型作为类保存到磁盘上呢?由于 python 代码未编译,我猜每次运行应用程序时都可以生成整个 ORM,但从我的 EF 背景来看,这感觉很奇怪。这里的最佳实践是什么?(顺便说一句,我在 Flask 的上下文中使用它)。
一般来说,您每次运行应用程序时都会反映它们,是的。否则,当您更新架构时,它们就会中断,这会破坏使用反射的意义。
可以根据模式的当前状态生成声明性类;PyPI 上有一个sqlacodegen模块可以执行此操作,SQLA 的作者有一个名为Alembic的数据库迁移项目,可以解决比较两个模式的类似问题。
| 归档时间: |
|
| 查看次数: |
1436 次 |
| 最近记录: |