【发布时间】:2014-01-25 00:11:28
【问题描述】:
我想要做的是使用 Sideqik 从后台文件中读取一些数据。我的问题是,当我将 UploadedFile 从控制器传递给工作人员时,它从 UploadedFile 变为 Hash。
在我的控制器的创建方法中:
file = params[file_key]
if not (file.nil? or file.class == ActionDispatch::Http::UploadedFile)
raise "File not a file in Controller!"
elsif not file.nil?
ImporterWorker.perform_async(name, file)
end
没有引发异常,我们愉快地继续使用 ImporterWorker,它具有:
def perform(name, file)
if not file.class == ActionDispatch::Http::UploadedFile
raise "File is: #{ file.class }:#{ file.inspect }"
end
...
引发异常的地方,“文件是:哈希:”后面跟着一大串我想是文件内容的表示,后面跟着“'original_filename'=>'Foo.xls'”,和其他此类字段。
为什么会变成哈希?我能做些什么来解决这个问题?
【问题讨论】:
标签: ruby-on-rails ruby file-upload hash sidekiq