2

のファイルに単純なクラスがありますlib/simple.rb

コンソール ( rails c) には、いくつかの問題があります。

  1. application.rbが含まれているにもかかわらず、Rails はファイルをロードできないようですconfig.autoload_paths += %W(#{config.root}/lib/**)。Rails 3.2 を Rails 2.x のように動作させる方法 (Rails 2.x でこのオートロードに関する問題が発生したことは一度もありません。Rails 3 は一歩後退したようです :( )

  2. 変更を加えてコンソールsimple.rbを呼び出すとreload!、ファイルがリロードされません。load "#{Rails.root}/lib/simple.rbリロードする必要があります。reload!Rails 2.x で使用していたように動作させる方法はありますか? つまり、まったく使用せずにすべてのファイルをリロードするだけloadですか?

4

1 に答える 1

2

ロードするクラスを含むフォルダーである必要があります。したがって、

config.autoload_paths += %W(#{config.root}/lib)

アプリが の場合はthreadsafe!、に変更config.autoload_pathsconfig.eager_load_pathsます。これを行うと、説明したとおりに動作するreload! はずです。

于 2012-09-30T12:08:48.750 に答える