我刚刚在我的Rails应用程序中添加了一个使用MySQL DB的新字段。我有一个CSV,其中包含表中已有记录的新字段(名称)的值。
Article (table)
_______________
id | name
CSV的第一个字段是id字段,第二个字段是名称。我想通过根据CSV中的id字段更新名称字段来更新Article表。有人可以帮我写一个MySQL查询吗?
答案 0 :(得分:1)
CSV.open('file_path.csv', 'r').each do |row|
article = Article.find_by_id(row[0])
article.update_attribute(:name, row[1]) if article
end
我使用find_by_id
因为如果找不到任何内容它会返回nil
,而find
会返回异常ActiveRecord :: recordNotFound。