2015-01-12 95 views
0

我正在爲投資者的Django應用程序。目前使用settings.py中配置的數據庫和3個已安裝的應用程序。Django postres方法外部數據庫

我正在整合一項新功能,每位經紀人都會在我們的應用程序中註冊他們的IP,以便我們將Postgres數據庫複製到他們的服務器中(除了'主持人'關於數據庫,所有內容都是相同的)。然後,代理將從他們的服務器向我們的服務器發送GET和POST方法。

我需要根據請求切換數據庫。我想我可以通過查看請求和SQL查詢處理來動態連接他們的postgres數據庫。我的要求是,我只需要使用Django postgres方法進行處理,而無需在設置文件中配置數據庫。

如果在設置中配置數據庫是唯一的方法,我怎樣纔能有效地切換到數據庫,以及在單個Django應用程序中可以連接多少個數據庫?

回答

1

我相信,如果你想使用Django方法(而不是簡單地使用RAW SQL查詢並解析它們),你將不得不使用settings.py方法並在那裏定義所有的數據庫。

https://docs.djangoproject.com/en/1.7/topics/db/multi-db/

總之,你定義一個數據庫中,可以通過手動選擇了它,在你的代碼(每個爲文檔):

Author.objects.using(database_name_variable).filter(...) 

另一種方法是看使用REST API(如Tastypie)調用連接到每個數據庫的不同Django實例。

+0

在Django中連接數據庫有沒有限制? – ManikandanV