从Rails 2.3开始,将目录添加到加载路径的正确方法是什么,以便它能够挂钩到Rails的自动重新加载机制中?将目录添加到Rails中的加载路径?
我在想的是一个具有几个使用STI的子类的类,我认为将它们放在一个子目录中而不是混乱的顶层是一个好主意。所以,我有这样的事情:
#app/models/widget.rb
class Widget < ActiveRecord::Base
add_to_load_path File.join(File.dirname(__FILE__), "widgets")
end
#app/models/widgets/bar_widget.rb
class BarWidget < Widget
end
#app/models/widgets/foo_widget.rb
class FooWidget < Widget
end
这是add_to_load_path
的方法,我要找的。
ActiveSupport :: Dependencies.autoload_paths <<“#{RAILS_ROOT}/app/widgets” – 2010-11-21 07:15:16
请参见pocket-full-quarter的答案,这实际上是正确的。这一个现在已经过时了。 – micapam 2013-10-10 02:38:02