我在Rails应用程序中有一堆非常小的类(例如,不同的错误)(所以来自active_support的所有好处都是可用的,我并不害怕使用它们),把它们放在单独的文件中似乎只会增加混乱,但我也不喜欢在任何需要的地方都需要大文件。处理这个问题的最佳做法是什么?
发布于 2013-10-24 13:28:10
只有在使用Kernel#autoload方法访问特定模块时,才能加载特定的文件。
autoload(:Foo, "foo.rb")
autoload(:Bar, "bar.rb")
...发布于 2013-10-24 13:16:16
一种选择是将文件放在config/initializers中,以便在应用程序启动时加载它。
发布于 2013-10-24 13:24:20
以下是仍然使用Rails自动加载的解决方案
# app/models/foo/errors.rb
module Foo
class A; end
class B; end
end
# app/models/foo.rb
module Foo
require 'foo/errors.rb'
endhttps://stackoverflow.com/questions/19567014
复制相似问题