如何在rails中使用命名作用域更新记录



我使用这段代码来使用like查询搜索记录。是否可以创建另一个可以更新记录的作用域。

 scope :search, lambda{|query| where(["name LIKE ?", "%#{query}%"])}

您可以使用rails的update_all方法。查看这里的描述:http://apidock.com/rails/ActiveRecord/Relation/update_all

编辑:它是关系类的一部分,所以你可以在作用域上调用它(在文档中没有明确说明)

EDIT2:它的工作原理很像destroy_all,也可以在作用域(关系)

上调用

最新更新