递归地包括所有模型子目录
如何在模型和lib目录中递归加载所有目录? 在application.rb中,我有以下几行:
config.autoload_paths += Dir[Rails.root.join('app', 'models', '{**}')] config.autoload_paths += Dir[Rails.root.join('lib', '{**}')]
但他们似乎只添加了一个级别的模型和lib子目录。
谢谢
这应该是有帮助的
Dir["#{config.root}/app/models/**/","#{config.root}/lib/**/"]
请享用! (:
更新:
优秀的问题,上面的post示例我简单地提到了我最近的项目。
经过一些测试后,我会得到更好的理解,这很棒。
主要区别当然是在File not config.root / Rails.root的join方法中
在’**’后跟踪’/’是有道理的。
第一个说明只在globbing时匹配目录。 第二个谈话以递归方式进行 。
在你的情况下,这个也适合
Dir[ Rails.root.join('app', 'models', '**/') ]