5

レール 3.2.3 . /libautoload パスにRails アプリがあります。私のライブラリファイルの1つは、そのようなファイルの束を必要としています

Dir[Rails.root.join("lib/foo/*.rb")].each { |f| require f }

開発中、これらのファイルを変更しても再読み込みされません。たとえば、 を変更した場合/lib/foo/bar.rb、それらの変更を確認するにはサーバーを再起動する必要があります。リクエストごとに適切にリロードされる方法を誰かが提案できますか?

4

3 に答える 3

3

これらのファイルがオートロード パスにある場合:

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

その後、それらを要求する必要はありません。これで試しましか?

于 2012-05-20T14:48:28.373 に答える
3

requireRails のオートローディング システムではうまく動作しません。

require_dependencyrequire とほとんど同じことを行いますが、ロードされた定数がリクエストの最後にアンロードされるように、オートロード システムをループ内に保持します。ファイルがレールのオートロードパスにあることを確認する必要がある場合があります

于 2012-05-20T15:36:32.477 に答える
0

行を追加またはコメント解除する必要があります。

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

config/application.rb の Application クラスに

于 2012-05-24T10:08:23.213 に答える