Rails 3.2.3 。我的自动加载路径中有一个带有/lib
的Rails应用程序。我的一个库文件需要一堆像这样的文件
Dir[Rails.root.join("lib/foo/*.rb")].each { |f| require f }
在开发过程中,如果我更改这些文件,则不会重新加载。例如,如果我修改/lib/foo/bar.rb
,我将不得不重新启动服务器以查看这些更改。任何人都可以提出一种方法,以便在每次请求时都能正确重新加载吗?
答案 0 :(得分:3)
答案 1 :(得分:3)
require
与rails的自动加载系统不能很好地配合。
require_dependency
将完成许多要求,但将循环系统保留在循环中,以便加载的常量将在请求结束时卸载。您可能需要确保文件位于rails的自动加载路径
答案 2 :(得分:0)
您必须添加或取消注释该行。
config.autoload_paths + =%W(#{config.root} / lib)
到config / application.rb中的Application类