从CSV更新列

时间:2016-04-09 13:18:08

标签: ruby-on-rails ruby csv

我有以下代码,它应该使用CSV文件每行的属性更新我的Rental模型中的每一行。数据库中ID为1的行应该使用CSV等中的第1行的值更新其属性...我在表中有10000行,在CSV中有10000(不包括标题)。

但是,不是更新模型中id = row的属性,而是使用第一行CSV更新表中的所有行属性,然后是第二行......

任何帮助将不胜感激!

csv_text = File.read(Rails.root.join('db', 'Lpostcodes.csv'))
csv = CSV.parse(csv_text, :headers => true)
csv.each do |row|
  postcode = row['postcode']
  latitude = row['latitude']
  longitude = row['longitude']
  puts $INPUT_LINE_NUMBER
  #update a particular row
  Rental.update($INPUT_LINE_NUMBER, postcode: postcode, latitude: latitude,
           longitude: longitude)
end

0 个答案:

没有答案