Ruby on Rails:File.delete不会删除

时间:2018-03-12 10:10:59

标签: ruby-on-rails delete-file

我在删除Rails应用程序中的文件时遇到问题。在一个按钮上,我调用一个动作delete_results,如果存在某些文件,则应将其删除。不知何故,操作中的其他所有内容都在工作(例如flash:success),但文件不会被删除。在控制台中,线路工作正常。这是一个小例子:

def delete_results
   File.delete("MyFile.txt") if File.exist?("MyFile.txt")

   somemodel = Somemodel.first
   if somemodel.update_attributes(:attr1 => nil, :attr2 => nil)
      somemodel.save
      flash[:success] = "The results are deleted!"
      redirect_to root_path
   else 
      render 'somepage'
   end
end

由于操作只能由管理员调用,我无法想到任何访问权限问题。应删除的文件位于主app目录中。我的代码中是否有任何重大错误,或者我是否必须包含其他内容?

提前致谢!

1 个答案:

答案 0 :(得分:0)

似乎redirect_to打扰删除文件 - 使用'render'代替工作,现在文件确实被删除了:)