2016-05-15 48 views
0

我有一個完美的Rails應用程序在開發和測試。在heroku上部署時,報告沒有問題,但該應用無法正常工作。在瀏覽器中打開它只會提供:Rails應用程序在開發過程中工作正常,但在Heroku postgres導致麻煩

很抱歉,但出錯了。 如果您是應用程序所有者檢查日誌以獲取更多信息「

在日誌中我看到了皮克表達其對我的變量/表作品‘國家’雖然我不是太熟悉的含義:

app[web.1]:      pg_get_expr(d.adbin, d.adrelid), a.attnotnull, a.atttypid, a.atttypmod 

app[web.1]:     FROM pg_attribute a LEFT JOIN pg_attrdef d 

app[web.1]:    WHERE a.attrelid = '"countries"'::regclass 

app[web.1]:     AND a.attnum > 0 AND NOT a.attisdropped 

app[web.1]:    ORDER BY a.attnum 

app[web.1]: app/controllers/application_controller.rb:15:in `default_or_selected_country' 

app[web.1]: 

heroku[router]: at=info method=GET path="/" host=evening-refuge-96756.herokuapp.com request_id=a240125e-4115-40d4-bfb0-ade1b8c909d6 fwd="178.165.130.180" dyno=web.1 connect=1ms service=204ms status=500 bytes=1714 

我看到我的方法`default_or_selected_country」參與相應的代碼是在開發和測試模式沒有問題:

def default_or_selected_country 
    session[:country_id] ||= Country.find_by(abbreviation: "AT").id 
    @default_or_selected_country = Country.find(session[:country_id]).name 
end 

當我寫這篇併購後礦石類似的pg表達式被記錄下來,總是包含「國家」表,並且指向與上述相同的方法。

我的問題在哪裏,我該如何解決它?謝謝!

+0

1.如果您沒有運行Heroku,請運行遷移。2.重新啓動服務器。 – zrl3dx

+0

你確定你有國家表內的數據嗎? – Sebin

+0

謝謝,[Sebin](http://stackoverflow.com/users/1684772/sebin),這正是它! – bobito

回答

1

事實上,我的應用程序最初需要一些數據播種,因爲控制器正在將它拉到填充下拉選擇器。本地這是由

rake db:seed 

完成在Heroku它是由

heroku run --app APP rake db:seed 

做簡單的使用作爲本地一樣的seeds.rb書面here

相關問題