如何从文件上传中与ActionDispath对象进行交互?

时间:2011-12-23 03:36:47

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-3.1

我在rails中有一个上传表单。在其他逻辑接管之前,我想对上传的文件进行一些预处理。

当我打印出整个params时,我看到我上传的文件中的数据为params:

"logo"=>#<ActionDispatch::Http::UploadedFile:0x007fbf2964d7b0 @original_filename="huddle-house.JPG", @content_type="image/jpeg", @headers="Content-Disposition: form-data; name=\"merchant[logo]\"; filename=\"huddle-house.JPG\"\r\nContent-Type: image/jpeg\r\n", @tempfile=#<File:/var/folders/rl/t02q9t1j3m53ktcqx_dj6zmc0000gn/T/RackMultipart20111222-605-1q58pp5>>,

如何访问该ActionDispatch中的tempfile

我尝试过以下操作,但这些都不起作用:

params[:logo][:tempfile]
params[:logo].tempfile

1 个答案:

答案 0 :(得分:1)

好吧,假设params[:logo]返回ActionDispatch个对象,你可以试试这个:

params[:logo].instance_variable_get(:@tempfile)