我在Rails中有一些对象数组用于某些表。我想通过单个Active Record Query在数组中通过该对象的位置更新其order字段。我怎样才能做到这一点?
我尝试了update_all.(:"order" => ?)
但无法获取update_all
中正在更新的对象。
答案 0 :(得分:0)
假设@user(只有你可以使用相应对象的引用)是对象数组(Activerecord),那么要更新数组中所有用户的顺序字段,你必须运行以下查询
@user.update_all(order_field: value)
答案 1 :(得分:0)
假设您有一个posts
数组,那么您可以执行以下操作
posts.each_with_index do |post, index|
post.update_attributes order: index
end
这将为每个post
执行一次查询。如果您希望单个查询更新数组中的所有帖子,那么实现起来要困难得多。我能想到的选择: