假设我有一个 excel 表,其中包含要存储在 db 中的数据。我使用 roo gem 并成功插入了 excel 表中的数据。现在我正在尝试验证。假设我的excel表为:
s.no name age
1 abc 12
2 def qwer
3 asd 23
当我上传这张表时,2 行数据被回滚,1,3 行数据存储在 db 中。我想要做的是,如果发生回滚操作,那么剩余的记录不应存储在 db 中。即第 3 行数据不应存储为第 2 行已回滚。感谢任何帮助。谢谢。
更新:这是我在控制器中的代码:
def fetch_excel_data
ex = Roo::Excel.new("/desktop/abc.xls")
ex.default_sheet = ex.sheets[0]
2.upto(ex.last_row) do |line|
name = ex.cell(line,2)
age = ex.cell(line,ex.last_column)
byebug
@product = Product.create(:name => name,:age => age)
@product.save!
flash[:success] = "data is stored successfully"
end
end
我想回滚整个 excel 表不仅记录..有什么办法吗?