2009-09-19 36 views
0

我試圖無縫地將一些遺留數據集成到Django應用程序中。我想知道是否有可能爲django模型使用備用數據源。例如,我可以聯繫服務器來填充模型列表嗎?該服務器根本不是基於SQL的。相反,它使用一些專有的基於TCP的協議。django模型的替代數據源?

複製數據不是一個選項,因爲遺留應用程序將繼續使用一段時間。定製經理會允許我這樣做嗎?

該模型應該像任何其他django模型一樣。它甚至可以插入管理界面。

您認爲如何?

感謝, 皮特

回答

0

這是不可能在目前的Django,短期重新實現整個Django的ORM API上的自定義數據檢索代碼頂級的。

已經有quite a bit of talk among Django developers關於從SQL特定的Query後端分離ORM API(基本上是QuerySet),以便爲非關係數據存儲編寫可插入後端。看起來很明顯,這是事情進展的方向,但沒有時間表,什麼時候可以做到。即使那樣你可能會爲你的系統編寫可插入後端的工作很多。

0

所以基本上這是一個兩層問題:

1 MultiDB支持>>搜索麥克馬龍& MultiDB @ GitHub的

2 - 非SQL後端支持>>NonSqlBackends

+0

你能詳細更多? – 2009-10-05 19:45:57

+0

首先,您需要爲您的數據源編寫一個數據庫後端驅動程序來處理您的「專有的基於tcp的協議」。之後,您需要編寫一個自定義管理器來允許您的模型以每個模型爲基礎連接到特定的數據庫源。 http://www.eflorenzano.com/blog/post/easy-multi-database-support-django/ Theres還有一個名爲djangrrl-dot-com的網站,有另一個例子。 有幾個例子,但我只能發佈一個鏈接,因爲我是新來的。 – 2009-10-06 01:51:58