0

基本上,我有两个 django 服务器(django v 1.2):

服务器 1 有一堆模型,本地数据库,远程数据库访问服务器 2 中的 ModelA。服务器 2 有 ModelA

我想在服务器 1 中为 ModelA 使用 ModelA.objects.get() 和 django ORM API。我是否应该将模型.py 从服务器 2 复制到服务器 1?通过复制models.py,我可以使用ORM方法并信任我设置的数据库路由器在同步数据库时不会做奇怪的事情。

这似乎足够好,对吧?我看不出有任何理由使用 django-piston 或那些其他的 API 包,因为在这些情况下,我仍然必须添加所有额外的代码来识别模型。我什至深入研究 API 包的主要原因是因为我想知道是否有一种干净的方法可以在不复制代码的情况下提供 ORM 访问。

4

1 回答 1

2

复制代码很常见。您可以将设置配置为指向您想要的任何数据库服务器。

随着应用程序的增长,必须添加网络服务器是很常见的。可以做到这一点的一种方法是将您的代码库复制到另一台机器并在反向代理后面运行它。

这意味着完全相同的代码在不止一台机器上运行,共享一个数据库后端。

Django 提供了一个您可能想要查看的“应用程序”结构。您可以打包应用程序并将其分发到另一个项目。

于 2013-02-12T23:25:49.850 回答