django请求远程数据库

时间:2019-04-03 12:39:25

标签: python django

我试图在Django项目“ FIRST”中请求将另一个Django项目“ SECOND”女巫的现有数据库部署在两台不同的计算机中。 我需要在app 1中获取app5中属性模型的值(如下所述)。 我搜索了“ django如何请求远程数据库”,但没有找到问题的答案

谢谢

机器1(192.xxx.xx.xx):

     ----- project FIRST 
                    ------APP1
                    ------APP2

机器2(192.yyy.yy.yy):

     ----- project SECOND 
                    ------APP3
                    ------APP4
                    ------APP5

2 个答案:

答案 0 :(得分:0)

您需要一个RESTful API。

一个大话题,我实际上只是为另一个人回答的。

我建议您check it out here.

创建API后,您可以执行一些管理操作来获取数据,并使用旧值填充新数据库。

至少这是一种方法。

答案 1 :(得分:0)

我用了dirkgroten的解决方案。它适用于我在测试平台上(使用docker的容器)。

我遵循的步骤:

  • 创建一个新的Django应用,其名称与项目“ FIRST”中的App5相同。

  • 副本,在models.py(例如FIRST / app5 / models.py)中,只有我需要从SECOND / app5.models.py

  • 中获取的表和字段
  • 在FIRST / settings.py

  • 中的INSTALLED_APP中添加新的“ app5”
  • 在FIRST / settings.py的数据库中添加参数定义,以使项目连接到远程数据库。

  • 将路由数据库添加到routers.py文件中

  • 别忘了在app1中导入新app5的模型

请注意,如果您的表与models.py有其他表依赖关系,则也必须在新的models.py中添加它们。

我以为我没有忘记其他任何步骤

感谢您的回答

(PS:抱歉,我的英语不好)