4

我正在制作一个应用程序,它在其中导入一个 csv 文件名 user.csv。但我面临的问题是它给出了一个错误

CsvimportController#import 中的参数错误

参数数量错误(1 代表 0)

而 CsvimportController 的代码是

require 'csv'
class CsvimportController < ApplicationController
def import

results = import('anas.csv') do
read_attributes_from_file
end


end
end

而且我还在 gem 文件中给出了 csv-mapper 和 fastercsv 的规范。

谁能帮我???

任何帮助,将不胜感激..

谢谢

4

2 回答 2

2

查看Railscast 396,了解如何从 CSV 和 Excel 文件导入数据。

smarter_csv项目旨在更好地处理 CSV 文件,因此值得一看。

于 2013-02-20T17:53:29.527 回答
0

如果您使用 Gem ,这很容易smarter_csv

您需要做的就是:

 require 'smarter_csv'

 def import(filename)
   results = SmarterCSV.process( filename, options_hash )
 end

并且您需要options_hash根据文档指定选项smarter_csv

有很多有用的选项,包括处理标题、自定义标题、忽略列和值的类型转换。

如果您的 CSV 文件很大,您还可以对传入的数据进行分块以进行并行处理。

于 2013-05-09T02:18:55.660 回答