【发布时间】:2019-01-28 23:51:36
【问题描述】:
我有一个包含父母及其子女数据的 csv 文件。父母有许多子女关联。我想要的是如果 family_situation/gross_income 或两者对于不同的孩子不同,我希望将该父母的最后一个 family_situation/gross_income 保存到数据库中。就像在下面的这种情况下,我希望family_situation 是“三口之家”,总收入是“16775”。我目前在我的父模型中拥有的内容如下。我怎样才能做到这一点,请帮忙。
父.rb
def self.import(file)
CSV.foreach(file.path, headers:true) do |row|
parent = Parent.find_or_create_by(
parent_1_firstname: row["parent_1_firstname"],
parent_1_lastname: row["parent_1_lastname"],
family_situation: row["family_situation"],
gross_income: row["gross_income"],
)
parent.children.find_or_create_by(
firstname: row["firstname"],
gender: row["gender"]
)
end
end
父.csv
parent_1_firstname,parent_1_lastname,family_situation,gross_income,childfirstname,childgender
Josh,Wilson,"family of two",13000,Jessica,Female
Josh,Wilson,"family of three",16775,Jamie,Male
【问题讨论】:
标签: ruby-on-rails csv ruby-on-rails-5 csv-import