使用Paperclip上传CSV并处理,而不保存CSV

时间:2011-08-16 03:40:08

标签: ruby-on-rails csv paperclip

我目前正在允许用户上传CSV文件,处理它们,根据内容保存数据库条目,然后必须返回并清理CSV。我想知道是否可以上传,并通过将CSV保留在内存中而不触及磁盘来进行处理?

How do I tell paperclip to not save the original file?

...似乎暗示离开迁移的领域会做到这一点,但我没有运气这种方法。有什么想法吗?

1 个答案:

答案 0 :(得分:6)

回形针的重点是来保存文件。您可以使用以下内容作为您的操作,并完全跳过使用回形针。

def upload
  CSV.parse(params[:file].read) do |row|
    # do whatever you need to do with the row
  end
end

使用如下形式:

<%= form_tag('/path/to/upload') do %>
  <%= file_field_tag :file %>
  <%= submit_tag %>
<% end %>