使用延迟作业时文件读取失败

kru*_*hah 0 ruby ruby-on-rails file delayed-job

如何检查我的params ['Filedata']是否已损坏?

我有它的读取文件params['Filedata']并将其写入另一个文件.

File.open(upload_file, "wb") { |f| f.write(params['Filedata'].read) }
Run Code Online (Sandbox Code Playgroud)

这条线对我来说很好..

但是,当我调用具有延迟作业功能的此功能时,send_later我得到的错误params['Filedata'].read.

ele*_*aut 5

我猜params['Filedata']是指上传的文件.

Rails将上传的数据作为临时文件处理,在请求完成后删除这些文件.如果以后要访问该文件,则需要将其复制到更长久的位置.