更智能的CSV和已上传的CSV文件

Gra*_*son 4 ruby csv import ruby-on-rails

对于我的应用程序,我正在通过上载文件file_field_tag。如何在SmarterCSV中使用该文件?我已经尝试过类似的操作SmarterCSV.process(@file.tempfile.path),即使CSV中有数据,它也只会返回一个空数组。

有什么想法吗?

rep*_*ept 5

建议的答案不起作用。

但是,如果您这样做:

    clients_data = params[:file_categories]
    clients = SmarterCSV.process(clients_data.tempfile, {:chunk_size => 1, :key_mapping => {:ca_id => :id, :ca_desc => :name}})
Run Code Online (Sandbox Code Playgroud)

这很好。您需要使用tempfile而不是original_filename。

  • 使用`tempfile`实例变量是正确的。谢谢! (2认同)