如何从BookshelfJS集合更新所有生成的模型?

拉美西斯

例如,给定一个具有sold_out属性的产品列表,我想更新该集合中每个项目的字段。

在此特定示例中,假设我想sold_out = false将该字段设置为该字段设置为的所有项目true

Product.where({sold_out: true})
.fetchAll()
.then(soldOutCollection => {
  return Promise.all(product => {
    return product.save({sold_out: false})
  })
})

此方法有效,但它会触发集合中每个项目一个查询。

有没有办法一次更新所有项目(仅触发一个查询)?

PS:我试图避免直接使用knex.js

网络软件

我认为,如果您想以这种方式进行更新,则可以尝试以下操作:

Product
.where({sold_out: true})
.save(
    {sold_out: false}, 
    {method: 'update', patch: true}
 )

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章