2014-03-24 33 views
1

我需要一種方式來讀取不同數據庫中的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,因爲它是將出現在第二個缺失的屬性。

任何ideea爲什麼會發生這種情況,以及我做錯了什麼,從我所看到的它使用我首先導入的模型,無論我告訴它使用什麼模型。

我使用python2.7和Django的1.3.3

回答

0

所有你需要它的Django文檔 https://docs.djangoproject.com/en/1.3/topics/db/multi-db/

我認爲,你的情況下,最好的解決方案是一個數據庫路由器上。

+0

數據庫路由只能幫助我確保模型讀取的數據庫正常,但我沒有數據庫的問題,但對於模型,它不使用指定的模型,而是使用第一個導入的模型。 –

相關問題