ActiveRecord:保存多个对象时跳过验证

2024-01-12

我知道我可以跳过单个保存的验证,如下所示:

User.new(name: 'John').save(validate: false)

但是,当同时保存多个对象时,我该如何做到这一点呢?像这样:

Category.create([
  { name: 'Apps' },
  { name: 'Songs' },
  { name: 'Movies' }
])

我发现了这个宝石:https://github.com/zdennis/activerecord-import https://github.com/zdennis/activerecord-import

它的工作原理如下:

categories = [ 
  Category.new(name: 'Apps'),
  Category.new(name: 'Songs'),
  Category.new(name: 'Movies')
]

Category.import(categories, validate: false)

也可以使用普通数组代替 ActiveRecord 对象。 https://github.com/zdennis/activerecord-import#examples

我猜它会生成纯 SQLvalidate设置为 false 因此可以跳过验证。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ActiveRecord:保存多个对象时跳过验证 的相关文章

随机推荐