sno*_*gel 5 ruby ruby-on-rails file wildcard
这是我在rake任务中打开文件的代码:
File.open(Rails.root.join("public/system/xmls/**/original/*.csv"),"r") do |file|
#etc
Run Code Online (Sandbox Code Playgroud)
但它不匹配任何文件(有三种可能的匹配).第一个**是一个名为2位的文件夹.我哪里错了?
该join方法通常不会扩展*,**而是将它们作为文字放入。也许这就是问题所在。你想要的可能更像是这样的:
Dir.glob(Rails.root.join("public/system/xmls/**/original/*.csv")).each do |path|
File.open(path) do |file|
# ...
end
end
Run Code Online (Sandbox Code Playgroud)
单独打开每个文件应该没问题。