使用不同的模型从django中的不同数据库中读取数据

时间:2014-03-24 15:30:14

标签: python django

我需要一种使用不同模型从不同数据库读取django数据的方法,因为数据库中的模型和字段在项目之间发生了变化。

我尝试做的是:

from sbo.core import models as sbo_core_models
from sbo_cloud.core import models as cloud_core_models

company_details = sbo_core_models.CompanyDetails.objects.using('sbo').filter(company=sbo_company).order_by("id")[0]
new_company_details = cloud_core_models.CompanyDetails.objects.get(id=int(reply['id']))

实际用于new_company_details的模型实际上是sbo_core_models.CompanyDetails而不是cloud_core_models.CompanyDetails,因为它缺少将出现在第二个中的属性。

任何想法为什么会发生这种情况以及我做错了什么,从我所看到它使用我首先导入的模型,无论我告诉它使用什么模型。

我正在使用python2.7和django 1.3.3

1 个答案:

答案 0 :(得分:0)

Django文档中您只需要它 https://docs.djangoproject.com/en/1.3/topics/db/multi-db/

我认为您的案例的最佳解决方案是数据库路由器。