2011-10-05 68 views
13

很新的rails/heroku。我創建了一個乾淨的項目來幫助弄清楚heroku在世界上發生了什麼。然後,我給它添加了:Heroku部署 - 死網頁「我們很抱歉,但出了問題。」

rails generate controller Pages home contact 

http://localhost:3000/pages/home顯示正是我們所期望的。承諾,推動git,推向heroku。在heroku上打開頁面,它返回錯誤頁面:「我們很抱歉,但出錯了。」

heroku日誌似乎沒有任何有趣的東西,而且例外情況是沒有註冊任何不好的東西。

更新:我已將日誌減少爲違規位的示例。

2011-10-06T01:06:05+00:00 app[web.1]: Started GET "/pages/home" for 97.87.14.192 at 2011-10-05 18:06 
:05 -0700 
2011-10-06T01:06:05+00:00 app[web.1]: 
2011-10-06T01:06:05+00:00 app[web.1]: ActiveRecord::ConnectionNotEstablished (ActiveRecord::Connecti 
onNotEstablished): 
2011-10-06T01:06:05+00:00 app[web.1]: 
2011-10-06T01:06:05+00:00 app[web.1]: 
2011-10-06T01:06:05+00:00 app[web.1]: 
2011-10-06T01:06:05+00:00 app[web.1]: cache: [GET /pages/home] miss 

這裏是我跑

# gemfile 
source 'http://rubygems.org' 

gem 'rails', '3.1.0' 

group :test do 
    gem 'sqlite3-ruby', :require => 'sqlite3' 
    gem 'rspec-rails', '2.6.1' 
    gem 'webrat', '0.7.1' 
end 

group :development, do 
    gem 'sqlite3-ruby', :require => 'sqlite3' 
    gem 'rspec-rails', '2.6.1' 
end 
+0

謝謝你看看,夥計們。我添加了Heroku日誌。如果有什麼我不知道它是什麼。 – DavidMann10k

+0

janders是正確的,它可能是一個database.yml錯誤,它阻止它。確保你的gemfile中有正確的寶石,並做一個包以防萬一。附:爲了以防萬一,您可能需要將電子郵件從這些日誌中取出。 :) – cbron

+0

好的,我的gemfile似乎最令人懷疑,因爲這實際上是我在'generate controller'之前改變的所有東西。我正在準備一份考試複印件。 – DavidMann10k

回答

43

這僅僅是一個普通的Heroku的錯誤,所以你不顯示敏感信息給最終用戶的Gemfile。只需在rails root中鍵入heroku logs,您應該可以看到最新的服務器詳細信息,包括您的錯誤。

如果你需要運行遷移命令是:

heroku run rake db:migrate 

(感謝lampshady)

+1

這就是答案!當我試圖耙,我得到錯誤,並且這導致我[這個答案](http://stackoverflow.com/questions/3747002/heroku-rails-3-and-sqlite3) - 我更新了我的gemfile,推動和傾斜再次。巴姆! – DavidMann10k

+0

甜。這個錯誤不是很具描述性,但現在你知道了。 – cbron

+0

是的,更重要的是我有一些書籤資源,以防止未來我的一些痛苦。謝謝。 – DavidMann10k

0

從你的Heroku的日誌ActiveRecord::ConnectionNotEstablished (ActiveRecord::Connecti onNotEstablished):。從Rails API Doc,當無法建立到數據庫的連接時會引發此錯誤。我猜你的錯誤可能在你的database.yml文件中,很可能是你的生產數據庫沒有設置的參數。

1

運行日誌'heroku logs',有一個關鍵贈品:PG::Error: ERROR: relation "<Rails Model>" does not exist。此條目說明您的模型無法加載。

要提供以前答案的更新,heroku rake已被棄用。 Heroku的要求:

heroku run rake db:migrate 
2

遷移數據庫在Heroku然後重新部署應用程序,並重新啓動服務器的Heroku。這就是你需要做的。

heroku rake db:migrate 

    git push heroku master 

    heroku restart 
相關問題