我已经构建了这个生成excel文档的小应用程序。我正在尝试创建一个目录来粘贴它。这些文档的构建方式取决于人们选择的@agency
。所以我使这个方法返回路径,因为路径在几个地方使用。
def reportsheet_dir
file_path = "#{Rails.root}/public/reportsheets/#{@agency.downcase.gsub("_","")}"
end
在创建文档的方法的开头,我有这个方法,据说可以构建目录,但它似乎正在工作
Dir.mkdir(reportsheet_dir) unless File.exists?(reportsheet_dir)
我一直在努力。这个 我得到了
Errno::ENOENT at /addons/agency_report_builders
No such file or directory -/Users/fortknokx/Work/toolkit/public/reportsheets/empowerlogicbuilder
我认为它因为它的多层深?因为必须公开/ reportsheets/agency_name/file_name
。我可以去制作文件夹,但我想每次都制作目录,因为可以随时制作新的代理商。这有可能吗?
答案 0 :(得分:1)
查看FileUtils.mkdir_p()
http://ruby-doc.org/stdlib-1.9.3/libdoc/fileutils/rdoc/FileUtils.html#method-c-mkdir_p
它将以递归方式创建不存在的目录。 Dir.mkdir
不会。