[英]How to upload files to the server in rails?
我願意不使用任何gem將文件上傳到服務器。 以下是我嘗試過的方法:
以下是我在模態中創建的函數:
def self.file_upload(uploaded_file)
puts uploaded_file
file = Tempfile.new(uploaded_file, 'http://52.41.99.60/GEMWebservices/Image')
returning File.open(file.path, 'w') do |f|
f.write file.read
f.close
end
end
我在創建acrion中使用了上述功能,如下所示:
@file_upload = User.file_upload(params[:uploaded_file])
但我得到以下錯誤:
unexpected prefix: #<ActionDispatch::Http::UploadedFile:0x007fa0909fbe00 @tempfile=#<Tempfile:/var/folders/tt/d903z3v94sbgr8yymqxn_m0m0000gn/T/RackMultipart20160829-27648-gzgzt8.jpeg>, @original_filename="kaka.jpeg", @content_type="image/jpeg", @headers="Content-Disposition: form-data; name=\"uploaded_file\"; filename=\"kaka.jpeg\"\r\nContent-Type: image/jpeg\r\n">
誰能幫我嗎? 先感謝您。
試試這個代碼片段:
def file_upload(file)
file_path = '/GEMWebservices/Image/'+file.original_filename
File.open(Rails.root.join('public', 'GEMWebservices','Image',file.original_filename), 'wb') do |f|
f.write(file.read)
end
file_path
end
實際上:
@file_upload = file_upload(params[:uploaded_file])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.