为了账号安全,请及时绑定邮箱和手机立即绑定

从ruby目录中要求所有文件的最佳方法?

从ruby目录中要求所有文件的最佳方法?

UYOU 2019-12-07 16:40:58
从ruby目录中要求所有文件的最佳方法是什么?
查看完整描述

3 回答

?
30秒到达战场

TA贡献1828条经验 获得超6个赞

怎么样:


Dir["/path/to/directory/*.rb"].each {|file| require file }


查看完整回答
反对 回复 2019-12-07
?
月关宝盒

TA贡献1772条经验 获得超5个赞

如果它是相对于需要执行此操作的文件的目录(例如,您要加载lib目录中的所有文件):


Dir[File.dirname(__FILE__) + '/lib/*.rb'].each {|file| require file }

编辑:根据以下评论,更新版本:


Dir[File.join(__dir__, 'lib', '*.rb')].each { |file| require file }


查看完整回答
反对 回复 2019-12-07
?
holdtom

TA贡献1805条经验 获得超10个赞

Dir[File.dirname(__FILE__) + '/../lib/*.rb'].each do |file| 

  require File.basename(file, File.extname(file))

end

如果不删除扩展名,则可能最终需要两次相同的文件(ruby不会意识到“ foo”和“ foo.rb”是同一文件)。两次请求同一文件可能会导致虚假警告(例如,“警告:已初始化的常量”)。


查看完整回答
反对 回复 2019-12-07
  • 3 回答
  • 0 关注
  • 510 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信