1
我有一个大型的Flask项目(使用Flask-SQLAlchemy),它有一个core
组件,它涉及处理大量数据,然后将结果保存到数据库。它有它自己的一套Flask-SQLAlchemy模型。拆分Flask应用程序?
还有一个web
组件,它为API定义了一个Flask应用程序,为web前端定义了另一个Flask应用程序,这两个组件处理了core
组件的处理结果。 web
部分还定义了一些它自己的模型(用户模型),其中core
组件不需要。
为了便于开发和组织,我想将core
组件拆成单独的项目,并将web
零件保留在其自己的项目中。这两个组件已经相当分离,所以它应该是一个简单的过程。
我弄不清楚的唯一部分是:web
组件如何访问core
组件的模型?我不想在两个项目中复制模型定义。
你能不能用setup.py为核心创建一个python包并将其安装到每个Web组件中? –
这就是我正在考虑的方法,但无法将我的头围绕处理数据库迁移的好方法。如果任何'core'软件包模型发生变化,会发生什么?我会再试一次,谢谢。 – frnsys
如果是这样的话,他们都使用完全相同的核心,为什么没有API和Web前端调用的内部API?要么或者让网页前端使用您的API前端 –