控制器中应该是从此参数哈希更新记录的内容



这可能是一个简单的问题。我正在阅读RubyonRails.org上的表格"帮助者指南"(http://guides.rubyonrails.org/form_helpers.html)。在第7.3节中,它显示了如何制作一个返回以下参数的表单:

 {'person' => {'name' => 'Bob', 'address' => {'23' => {'city' => 'Paris'}, '45' => {'city' => 'London'}}}}

鲍勃在哈希中有2个地址。那么,控制器中有什么是为了同时更新鲍勃的两个地址呢?

谢谢。

更新:

这是我认为这些模型的外观,但是我仍然不知道控制器应该同时更新鲍勃的两个地址。

person.rb

attr_accessible :name, :addresses_attributes 
has_many :addresses
accepts_nested_attributes_for :addresses

address.rb

attr_accessible :city
belongs_to :person

谢谢。

传统上,我可以建议尝试以下内容:

def update
  @person = Person.find(params[:id])
  if @person.update_attributes(parmas[:person])
    #update successful, now do what you wanna do
  else 
    #update was unsuccessful 
  end
end

尝试一下,如果有任何错误,请恢复。但这可能不是学习东西的正确方法。您应该遵循入门和随后的教程。

最新更新