我在 Rails 应用程序中有一堆非常小的类(比如,不同的错误)(所以所有的好东西active_support
都是可用的,我不害怕使用它们)并将它们放在单独的文件中似乎只会增加混乱,但我不也不喜欢在任何需要的地方都需要大文件。处理此问题的最佳实践是什么。
问问题
46 次
3 回答
4
Kernel#autoload
您可以让特定文件仅在使用该方法访问特定模块时才加载。
autoload(:Foo, "foo.rb")
autoload(:Bar, "bar.rb")
...
于 2013-10-24T13:28:10.733 回答
0
One option is to put the file in config/initializers
so it is loaded on application startup.
于 2013-10-24T13:16:16.037 回答
0
这是仍然使用 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'
end
于 2013-10-24T13:24:20.483 回答