Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如果上传成功,Rails回形针将删除本地附件_Ruby On Rails_Ruby_Paperclip - Fatal编程技术网

Ruby on rails 如果上传成功,Rails回形针将删除本地附件

Ruby on rails 如果上传成功,Rails回形针将删除本地附件,ruby-on-rails,ruby,paperclip,Ruby On Rails,Ruby,Paperclip,我有下面的代码将本地文件保存到AWS S3。它将我的文件正确地上传到S3,但不会删除我的本地文件。现在我已经完全填满了磁盘空间。回形针上传本地文件后,我如何要求它删除本地文件 classjobartifact

我有下面的代码将本地文件保存到AWS S3。它将我的文件正确地上传到S3,但不会删除我的本地文件。现在我已经完全填满了磁盘空间。回形针上传本地文件后,我如何要求它删除本地文件

classjobartifact
这就是所谓的:

@filename=“#{Rails.root}/tmp/values.csv”
JobArtifact.create(文件:file.open(@filename))

既然您知道文件的路径,那么在文件上传到s3之后,您可以执行类似的操作-

def remove_file
  File.delete(@filename) if File.exist?(@filename)
end

因为您知道文件的路径,所以可以在文件上传到s3后执行类似的操作-

def remove_file
  File.delete(@filename) if File.exist?(@filename)
end

为什么首先要将文件存储在本地?您可以直接将其存储到s3。@Gautam Good point。我正在本地建造它。最高可达20米。然后我把它推到S3。我可以逐行构建CSV到S3吗?好的,我明白你的意思,我不确定你是否可以逐行构建CSV到S3。你为什么首先将文件存储在本地?您可以直接将其存储到s3。@Gautam Good point。我正在本地建造它。最高可达20米。然后我把它推到S3。我可以逐行构建CSV到S3吗?好的,我明白你的意思,我不确定你是否可以逐行构建CSV到S3。检查这个-检查这个-