Ruby on rails RubyonRails3:使用2个参数更新联接表?

Ruby on rails RubyonRails3:使用2个参数更新联接表?,ruby-on-rails,ruby,where-clause,Ruby On Rails,Ruby,Where Clause,我有一个联接表,它有3个参数。我想用where子句来更新它,类似这样:这显然是不正确的 Grid.update(:page_id => @page_id,:thing_id => @thing_id,:number => @number ).where(:page_id => @page_id, :number => @number ).first 我需要找到匹配页码和编号的记录,然后更新内容id 谢谢! 雅各布新旧号码/页是相等的吗?谢谢!这也是有效的:Grid

我有一个联接表,它有3个参数。我想用where子句来更新它,类似这样:这显然是不正确的

Grid.update(:page_id => @page_id,:thing_id => @thing_id,:number => @number ).where(:page_id => @page_id, :number => @number ).first
我需要找到匹配页码和编号的记录,然后更新内容id

谢谢!
雅各布

新旧号码/页是相等的吗?谢谢!这也是有效的:Grid.where:page\u id=>@page\u id,:number=>@number.update\u all:thing\u id=>@thing\u id在这里找到了示例:@jakobk:的确。实际上,您可以在update_中写入所有内容,并查看conditions参数。我个人不会这么做,因为它在语义上不符合你的意图,当然这是主观的
Grid.where(:page_id => @page_id, :number => @number).first.
  update_attributes(:page_id => ...,: thing_id => ..., :number => ...)