红宝石轨道 – 质量增量字段1

前端之家收集整理的这篇文章主要介绍了红宝石轨道 – 质量增量字段1前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个查询更新交易集计数=计数1.在Rails中,当我这样做使用ActiveRecord,我可以想到
Deal.all.each { |deal| deal.update_attribute(:count => (deal.count + 1))}

这需要更多的SQL查询而不是一个查询.有没有更好的方式在Rails中执行此操作(不直接在Rails应用程序中使用SQL查询).

解决方法

使用ActiveRelation update_all更新所有记录,其中给出的详细信息是否与提供的一组条件匹配,也可以提供限制和顺序.该方法构造单个sql UPDATE语句并将其直接发送到数据库.它不会实例化所涉及的模型,并且不会触发Active Record回调.

http://apidock.com/rails/ActiveRecord/Base/update_all/class

猜你在找的Ruby相关文章