1

このメッセージをより適切にデバッグするにはどうすればよいですか? トレースは、私のファイルの 1 つ - application.rb からの 3 行を示しています。

18 module CustomApp
19   class Application < Rails::Application
...
49 # Enable the asset pipeline

このエラーをスローしているファイルを正確に見つける方法はありますか?

最後のトレース:

/home/user/.rvm/gems/ruby-1.9.3-p0/gems/figaro-0.2.0/lib/figaro/railtie.rb:8:in `update'

私はレンガの壁にぶつかったような気がします..そのため、私はこのエラーを修正することを切望していますが、これらのメッセージをより適切にデバッグする方法を見つけたいと思っていますか? 「somefile.rb:112でハッシュを文字列に変換できない」のようなものは簡単に処理できますか?

4

1 に答える 1

1

ruby-debug について学ぶには: http://bashdb.sourceforge.net/ruby-debug.html

Rails のデバッグについて学ぶには: http://guides.rubyonrails.org/debugging_rails_applications.html

エラーはこのファイルから来ています:

lib/figaro/railtie.rb line 8

そのファイルのコード ブロック:

path = Rails.root.join("config/application.yml")
ENV.update(YAML.load(File.read(path)) || {}) if File.exist?(path)

トラブルシューティングの 1 つの方法は、ruby-debug を使用することです。

gem install ruby-debug

そのファイルを編集して、より適切なエラーが表示されるようにします。

path = Rails.root.join("config/application.yml")
if File.exist?(path)
   debugger  
   f = File.read(path)  
   y = YAML.load(f)
   ENV.update(y || {})
end
于 2012-04-05T19:49:20.683 に答える