Rails 3 - 将文件上传到公共目录

sma*_*ark 21 upload ruby-on-rails-3

我正在寻找一种简单的方法将文件(一个xml文件)上传到Rails 3的公共目录.一旦它在那里我想打开它,解析内容并在此之后删除文件.

每当我搜索文件上传时,我都会遇到Paperclip.但我不想将文件与对象关联.我只是想上传它.最简单的方法是什么?

fl0*_*00r 43

一个.形成

<%= form_for :file_upload, :html => {:multipart => true} do |f| %>
  <%= f.file_field :my_file %>
  <%= f.submit "Upload" %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

湾 调节器

def file_upload  
  require 'fileutils'
  tmp = params[:file_upload][:my_file].tempfile
  file = File.join("public", params[:file_upload][:my_file].original_filename)
  FileUtils.cp tmp.path, file
  ... # YOUR PARSING JOB
  FileUtils.rm file
end
Run Code Online (Sandbox Code Playgroud)

但是你可以只解析tempfile,所以你不需要将它复制到公共目录,它会自动删除