如何在两个模块之间共享数据库模型?

如何在两个模块之间共享数据库模型?

问题描述:

背景如何在两个模块之间共享数据库模型?

我目前正在在Python的web项目,是在AWS托管Elasticbeanstalk。我们有两个可部署的网络应用程序。前端烧瓶应用和后端烧瓶应用。在结构上两者在同一个git仓库中,但是为了部署,每个仓库都单独归档,生成一个可以发布到服务器的.zip文件。

--project/ 
    --front/ 
    --back/ 

该解决方案的两个模块都需要与数据库进行通信。我为此选择了使用ORM sqlalchemy。这个ORM允许我创建表示我的数据库中的表的模型(python类)。

发行

我的问题是这样的。我需要能够在两个模块中使用模型。目前,我拥有保存每个子文件夹中模型的文件的副本。这可能会导致很多问题保持文件同步,但也会在我的存储库中添加大量重复代码。我希望有更多经验的人能够描述一个更好的解决方案。

您可以添加,你有你的模型(和共享库也)一common文件夹,如:

--project/ 
    --front/ 
    --common/ 
    --back/ 

然后部署两个文件夹front/common/例如。

通过这样做,您可以压缩一个Zip文件中的两个文件夹,也可以使用两个Zip文件。

+0

这似乎是我找到的最好的解决方案,使我的构建/部署过程更长,但值得减少代码重复。 –