2010-10-12 20 views
3

我已經使用Heroku來推高我已經編碼的Rails應用程序。Heroku的開發流程?

但是現在我想知道如果我從頭開始編寫新的Rails應用程序,工作流將如何。

例如,如果我在我的應用程序代碼中使用他們的插件(MongoHQ,Redis,Websolr,Sendgrid等),那麼我想我不應該在我的本地環境中安裝MongoDB,Redis,Solr,Mail服務器等等,沒有用我的代碼工作,對嗎?

所以這意味着我必須將我的應用程序推到Heroku平臺上,才能在Web瀏覽器中運行它。這意味着,在改變線路之後,我必須承諾並推動它。

如果我是正確的,這不是很耗時,因爲在我剛更改代碼之前,我可以立即在瀏覽器中看到結果。現在我必須推動我希望在瀏覽器中看到的每一個變化。

+0

您是否看過heroku.com上的API和設置文檔?我認爲可能有一種方法可以讓您通過在開發環境中設置某些內容來訪問您需要的內容。 – DJTripleThreat 2010-10-12 09:04:00

回答

3

您可以在本地安裝所有這些 - 當您在生產環境中運行而不是在開發環境中時,只需要指定不同的配置。

例如,Websolr,將在您的初始化以下行:

Sunspot.config.solr.url = ENV['WEBSOLR_URL'] if ENV['WEBSOLR_URL'] 

將允許它在本地和在Heroku工作。 See the docs瞭解更多信息。

+0

值得注意的是:太陽黑子寶石提供了一個'sunspot-solr'命令用於開發模式。 – 2010-10-12 19:32:03

1

我不能告訴所有的插件,但我使用的那些在開發模式下有非常好的回退機制用於本地部署。

例如,Sendgrid會檢測您何時使用ActionMailer併爲您發送電子郵件。您不必在代碼中配置或調用任何內容。在本地,您可以像以前一樣發送電子郵件(通過sendmail或smtp服務器)

與例外情況相同(儘管您可以直接調用其API)。

MongoHQ ...它不應該被PostgreSQL替代嗎?然後,在大多數情況下,你不應該關心,就像你不關心PostgreSQL運行而不關心MySQL。