你好我用post文件向我的服务器发送一个带文件的请求 该文件到达但我想获得我打开它的路径,但当我得到文件
params[:file].path
它说哈希没有方法 所以现在我知道这是一个哈希而不是一个文件,有没有办法将这个哈希转换为我需要的文件?
这是我的请求的外观:
{
"utf8"=>"✓",
"authenticity_token"=>"vsp2/5YCM9OBFjXASnpnXNmi4oYVlbAEeUhHQzpRd4w=",
`"file"=>`{
: filename=>"mass_email.csv",
: type=>"text/csv",
: name=>"file",
: tempfile=>#<File: /tmp/RackMultipart20150422-8224-1vm8siy.csv>,
: head=>"Content-Disposition: form-data; name=\"file\"; filename=\"mass_email.csv\"\r\nContent-Type: text/csv\r\n"
},
"commit"=>"Send Mass Email",
"from"=>{
"0"=>"\"balblabla\" <email@ik.com>"
},
"subject"=>{
"0"=>"asdasda"
},
"template"=>{
"0"=>"sdasdasdaojoasdijoisjdcxvb"
}
}
如果你知道我怎么能改变这个请求到达的方式还有更多的\\到处都会非常有用
答案 0 :(得分:1)
要访问文件名,请使用
filename = params[:file][:filename]
访问文件使用
file = params[:file][:tempfile]