我有一個遺留系統,我想用在Django中編寫的應用程序來擴展。該系統在同一臺服務器上託管數百個小型網站。一個Mysql服務器負責處理數據:每個網站都有自己的Mysql數據庫(從主機名派生的名稱),具有相同的表結構。所有站點(主機名和數據庫名稱)的列表都在單獨的數據庫的表中進行管理。如何用Django處理數百個相同的數據庫?
我並不需要在所有Django的用戶/會話表,或者Django管理模塊。
是否有可能寫Django的代碼,以便:
- 每個MySQL查詢得到一個正確的數據庫名稱(最終基於請求的
Host
頭) - 我沒有硬編碼的主機名列表在例如。
settings.py
。當一個網站被添加或重命名,一切都「正常」(或者我可以發送一個信號來重新加載網站列表)。
本文介紹瞭如何可以做到這一點。這是值得一讀:http://blog.uysrc.com/2011/03/23/serving-multiple-sites-with-django/。 – alexn