当我在irb中运行此代码时:
File.open('j1.txt','w') {|f| f.write("doc1223423")}
Run Code Online (Sandbox Code Playgroud)
它运作成功.但是当我在控制器中的方法中执行相同操作时,会出现以下错误:
Errno::ENOENT (No such file or directory - file location as specified )
Run Code Online (Sandbox Code Playgroud)
为什么这样做,我该如何解决?
解决了.我指定的上述文件位置不存在.我正在做这样的事情
File.open ("#{RAILS_ROOT}/jatin/j.txt", 'w+') do |f|
f.write("blah")
end
Run Code Online (Sandbox Code Playgroud)
但是目录/ jatin /不存在,所以解决方案是首先创建目录然后创建文件.
Dir::mkdir("#{RAILS_ROOT}/jatin")
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助.
| 归档时间: |
|
| 查看次数: |
5313 次 |
| 最近记录: |