Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails 3、activerecord导入gem、CSV_Ruby On Rails_Ruby_Csv - Fatal编程技术网

Ruby on rails Rails 3、activerecord导入gem、CSV

Ruby on rails Rails 3、activerecord导入gem、CSV,ruby-on-rails,ruby,csv,Ruby On Rails,Ruby,Csv,阅读后,我有一个任务: desc "Import sales" task :import_sales => :environment do sales = File.open(Rails.root.join("public", "system", "xmls", "3", "original", "first.csv"),"r").map do |line| isbn, date, quantity, value, channel = line.split("\,")

阅读后,我有一个任务:

desc "Import sales" 
task :import_sales => :environment do
  sales = File.open(Rails.root.join("public", "system", "xmls", "3", "original", "first.csv"),"r").map do |line|
    isbn, date, quantity, value, channel = line.split("\,")
    Importsale.new(:isbn => isbn, :date => date, :quantity => quantity, :value => value, :channel => channel)
  end
  Importsale.import sales
end
一些csv数据如下:

9780953893201,30/5/10,4,25.6,UK Home
9780953893201,25/6/10,3,19.2,UK Home
9780953893201,30/7/10,6,95.94,UK Home
9780953893201,27/8/10,1,15.99,Export
9780953893201,27/8/10,13,207.87,UK Home
9780953893201,27/8/10,1,6.4,UK Home
9780953893201,24/9/10,14,223.86,UK Home
9780953893201,24/9/10,5,32,UK Home
但是rake任务并不是分割CSV文件——我要导入一条记录,最后一个通道包含

UK Home
9780953893201

使用map是否会停止csv解析为行?如果我使用每一行或每一行,我会得到一个“无效参数”错误

因为没有人在写答案

File.readlines(...).map do |line|
    ...
end

也许你想要File.readlines(…).map do | line |?你做到了!非常感谢。如果你愿意,把它记下来作为答案,我会打勾的。