当我上传一个包含多行数据的csv文件时,其中一些是有效的(基于我在模型中的验证)而有些则不是,我的数据库会填充有效的条目,即使存在行也是如此csv文件中包含无效数据。
找到无效字段后,如何拒绝整个csv文件?谢谢。
答案 0 :(得分:1)
您应该将整个通话包装在一个交易中。假设您的模型是用户:
ActiveRecord::Base.transaction do
CSV.each do |l|
a = User.new(l)
if !a.save
raise ActiveRecord::Rollback
end
end
end
end