2013-10-08 34 views
0

我希望能夠在運行時更改Heroku應用程序上的數據庫連接。例如,假設網頁上有一個開關,QA測試人員可以在開發和生產數據庫之間進行切換。考慮到Heroku使用DATABASE_URL出於任何原因並覆蓋了database.yml文件,我不清楚這是否可以正常工作。在運行時更改Heroku中的數據庫連接

另一方面,我不清楚,是在哪裏建立連接,以及如何傳遞指示數據庫的參數,最好不必更改我現有的代碼(即繼承ActiveRecord::Base的子類)。

這怎麼可能完成?

回答

0

如果您確實想要這樣做,您可以使用Heroku API在應用程序中更改DATABASE_URL配置變量,然後觸發重新啓動,但強烈建議僅使用單獨的Heroku應用程序來運行開發和生產 - 如果生產數據被更改/刪除,然後我會猜測會出現各種麻煩。

+0

我確實有多個Heroku應用程序,但它經常令人討厭,因爲我的團隊經常更改配置以便對兩個數據庫進行測試。這主要是由於它們之間的性能差異。我對生產數據也並不特別擔心,因爲通過網絡應用訪問的大多數數據都是隻讀的。 – GeReV