2013-10-08 46 views
0

我希望能够在运行时更改Heroku应用程序上的数据库连接。例如,假设网页上有一个开关,QA测试人员可以在开发和生产数据库之间进行切换。考虑到Heroku使用DATABASE_URL出于任何原因并覆盖了database.yml文件,我不清楚这是否可以正常工作。在运行时更改Heroku中的数据库连接

另一方面,我不清楚,是在哪里建立连接,以及如何传递指示数据库的参数,最好不必更改我现有的代码(即继承ActiveRecord::Base的子类)。

这怎么可能完成?

回答

0

如果您确实想要这样做,您可以使用Heroku API在应用程序中更改DATABASE_URL配置变量,然后触发重新启动,但强烈建议仅使用单独的Heroku应用程序来运行开发和生产 - 如果生产数据被更改/删除,然后我会猜测会出现各种麻烦。

+0

我确实有多个Heroku应用程序,但它经常令人讨厌,因为我的团队经常更改配置以便对两个数据库进行测试。这主要是由于它们之间的性能差异。我对生产数据也并不特别担心,因为通过网络应用访问的大多数数据都是只读的。 – GeReV