2014-07-27 94 views
1

我幾乎是全新的RoR等。爲什麼我會爲Heroku託管的全新應用程序獲取應用程序錯誤錯誤頁面?

我下面的視頻教程,以建立自己的基於Web的應用程序,我一到步: 混帳推Heroku的主

當混帳bash中,有人來了聲稱它是一個錯誤無法編譯紅寶石。現在,它表示它已啓動並已部署,但頁面上的應用仍存在相同的錯誤,http://infinite-mountain-6131.herokuapp.com/

任何想法?如果需要,我可以添加文件。

請求的文件(S):

應用程序/配置/從我的評論說,在我的錯誤中提到

require File.expand_path('../boot', __FILE__) 

require 'rails/all' 

# config/application.rb 
config.assets.initialize_on_precompile = false 

# Require the gems listed in Gemfile, including any gems 
# you've limited to :test, :development, or :production. 
Bundler.require(*Rails.groups) 

module Myrubyblog 
    class Application < Rails::Application 
    # Settings in config/environments/* take precedence over those specified here. 
    # Application configuration should go into files in config/initializers 
    # -- all .rb files in that directory are automatically loaded. 

    # Set Time.zone default to the specified zone and make Active Record auto-convert to this zone. 
    # Run "rake -D time" for a list of tasks for finding time zone names. Default is UTC. 
    # config.time_zone = 'Central Time (US & Canada)' 

    # The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded. 
    # config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s] 
    # config.i18n.default_locale = :de 
    end 
end 

線6 application.rb中是我放在config.assets.initialize那裏有第5行建議解決我的問題。

這是當我運行該遷移的建議會發生什麼(Heroku的運行耙分貝:遷移)

Running 'rake db:migrate' attached to terminal... up, run.6274 
rake aborted! 
NameError: undefined local variable or method 'config' for main:Object 
/app/config/application.rb:6:in '<top <required>>' 
/app/Rakefile:4:in 'require' 
/app/Rakefile:4:in '<top <required>' 
<See full trace by running task with --trace> 
+0

能否請您複製了你的Heroku的日誌中,你看到的任何錯誤?並可能包含指向該教程的鏈接? – RSid

+0

這裏有很多舊的東西,不再是讓Rails應用程序運行的正確方法。我強烈建議您按照Heroku https://devcenter.heroku.com/articles/getting-started-with-rails4中的「入門」步驟操作。這是第4版。谷歌的Rails 3版本,如果你使用的話。 – Gene

+1

你運行migrations做'heroku運行rake db:migrate'嗎? –

回答

1

作爲一項規則,有兩種類型的錯誤託管在Heroku上一個Rails應用程序時,你可以得到:

Heroku的錯誤

enter image description here

-

Rails的錯誤

enter image description here

-

錯誤

兩者之間的區別是很重要的 - rails錯誤只如果你的工作環境其實是發生「運行「你的Rails應用程序。一個通常由缺乏db連接的創建 - 如果您的操作環境/ Heroku的將無法正確加載

你肯定是一個的Heroku問題的問題會發生Heroku錯誤。解決這個問題的方法是,以確保您的應用程序都運行必需品 - 最明顯的是正確的db

你會使用以下最好:

$ heroku run rake db:migrate 

不過,我很欣賞這個億韓元」 T爲唯一的問題你必須


Heroku的部署

正如你我說過你是ROR的「初學者」,讓我給你一些想法

首先,當你在這裏寫一個問題時,它有助於泄露儘可能多的信息 - 通常是從日誌或任何其他特定的錯誤處理機制

其次,要確保讓應用程序運行已經達到要求的一切。最值得注意的是,當你提到的Heroku cannot compile the Ruby application,你需要提供信息爲什麼是這樣的話 - 有可能會成爲一個gem衝突(sqlite3的)或類似

第三,你需要確保你已經遷移你的數據庫。這是一個最大的原因,「Heroku的錯誤」的出現 - 在部署Rails應用程序並不意味着你在本地做出的遷移將長期存在 - 你需要確保你有db根據您的需要更新,這是可以做到如下:

$ heroku run rake db:migrate 
+0

我遷移多次跑去,我無法找到日誌 – user3880930

+0

一件事的原因所在,這有助於我們的是如果你安裝了['logentries'插件(https://addons.heroku.com/logentries) –

+0

我無法對我的電腦進行限制 – user3880930

相關問題