【问题标题】:Connecting 2 Django Projects on Different Servers连接不同服务器上的 2 个 Django 项目
【发布时间】:2016-06-24 14:34:46
【问题描述】:

由于我无法控制的原因,2 个 Django 项目被放置在 2 个不同的 AWS 服务器上,都使用相同的 RDS AWS 数据库。

我希望项目 B 能够访问和操作项目 A(最初创建它们的位置)中使用的模型(表)。

这有可能吗?以某种方式通过PYTHONPATH 在网络上导入项目 A 应用程序?

【问题讨论】:

  • 您不能只通过服务器将其导入并在执行时进行更改,您需要修改 A 以允许来自 B 的连接进行操作。
  • @TadhgMcDonald-Jensen 你能否详细说明如何做到这一点
  • 我对此知之甚少,无法发布一个像样的答案,但我相信相关技术是RPC,基本上可以让您从 B 发送代码以在 A 上执行。

标签: python django pythonpath


【解决方案1】:

对不起...我缺乏评论的声誉,否则我不会发布。

我认为在这种情况下,您可能需要使用Django REST Framework

这样您可以简单地授权项目相互交谈,DRF 内置了 httpbasic,但您可能应该尝试设置某种类型的哈希令牌作为身份验证的一部分。

我最近发现了this guide...虽然它特定于移动设备,但它可能是 DRF 中更好的演练之一。

【讨论】:

  • 非常酷,所以您建议让项目 B 向项目 A 询问模型的 JSON 表示并以这种方式使用它?
  • 是的,这可能是最直接的方法。我也正在开始一个类似的实现,所以希望在 API 方面更有经验的人可以加入。我看到的唯一警告是序列化 django 模型有时很糟糕(更复杂的模型不容易序列化用于 JSON 传递),但根据您的模型,这可能不是问题。
猜你喜欢
  • 2017-01-30
  • 2017-04-30
  • 1970-01-01
  • 2018-12-28
  • 1970-01-01
  • 2017-09-30
  • 1970-01-01
  • 1970-01-01
  • 2015-12-26
相关资源
最近更新 更多