Ruby on Rails更新所有用户的字段

时间:2014-05-27 20:45:53

标签: ruby-on-rails ruby

我遇到了一些麻烦,我不确定是否有可能做我想做的事。

我的user模型有一个名为points的字段。我也有matches模型。

我一直在尝试使用我的matches_controller更新匹配更新时points的{​​{1}}字段(由网站管理员更新)。目标是在用户选择正确分数时添加分数。

我不确定我是否能够这样做。我想知道我是否错误地尝试从user访问user模型?因为我想在更新matches_controller分数时更新所有字段,我需要从match

进行更新

我一直在试图解决这个问题。我不正确地接近它吗?

感谢阅读并希望有所帮助。

这是相关代码

  

matches_controller.rb

matches_controller

1 个答案:

答案 0 :(得分:1)

除非您将所有记录中的字段更新为相同的值,否则不能使用update_all,这不是这种情况。

这个怎么样?

MatchPick.where(:matchID => params[:id], :userPick => match_params[:result]).each do |mp|
  mp.user.update_attribute(:points, mp.user.points + 4)
end

(这假设MatchPick是Match和User之间的连接记录,与用户有belongs_to的关系