我在将 .csv 文件导入 rails (3.2.6) 时遇到问题。这是我第一次使用 csv 措辞,我一般是新手。我使用设计生成用户模型,不知道这是否与此问题有关。我只是在 tasks/import.rake 中创建一个简单的 rake 任务
require 'csv'
desc "Import data from csv file"
task :import => :environment do
CSV.foreach(Rails.root.join('db', 'data.csv'), :headers => true) do |row|
attrs = {
:first_name => row[0],
:last_name => row[1],
:email => row[2],
:street_address => row[3],
:city => row[4],
:state => row[5],
:zip => row[6],
}
user = User.new(attrs)
if user.save
puts "Saved user #{attrs.inspect}"
else
puts "Unable to save user #{attrs.inspect}"
end
end
end
我跑$: rake import
我得到:
Unable to save user {:first_name=>"jane", :last_name=>"joe", :email=>"557@djh.com", street_address=>"38776 main", :city=>"los angeles", :state=>"ca", :zip=>"90887"}
Unable to save user {:first_name=>"bob", :last_name=>"billy", :email=>"7663@top.com",:street_address=>"5958 left", :city=>"los angeles", :state=>"ca", :zip=>"98768"}
Unable to save user {:first_name=>"jill", :last_name=>"jilly", :email=>"5857@joc.com", street_address=>"85755 second", :city=>"culver city", :state=>"ca", :zip=>"90332"}
不确定我在这里是否遗漏了一些明显的东西。这似乎很简单。谢谢你的帮助!