如何处理导轨形式的多个模型

问题描述:

http://weblog.rubyonrails.org/2009/1/26/nested-model-forms如何处理导轨形式的多个模型

本文帮助学习如何处理多个模型的导轨形式。只要模型嵌套,它就会工作。如果他们不是?可以说,我有一个表单,用户填写个人信息,地址详细信息和一系列指定她兴趣的复选框。至少有3个表涉及这一个单一的表单,没有3个不同的保存按钮,处理这个问题的最佳方式是什么?

两个选项:

首先是ActivePresenter这对于这个效果很好。

其次就是使用fields_for

<%= form_for @user do |f| %> 

    <%=f.label :name %> 
    <%=f.text_field :name %> 

    <%= fields_for @address do |fa| %> 
     <%=fa.label :city %> 
     <%=fa.text_field :city %> 
    <% end %> 

<% end %> 

然后在控制器中,保存记录。

@user = User.new(params[:user]) 
@address = Address.new(params[:address]) 

虽然ActivePresenter工作得很好。

还发现通过谷歌railsforum post,这将工作良好。

+0

第二个选择似乎很简单(我应该已经猜到了) 我没碰到过该教程,但它是嵌套模型虽然。 一个问题:如果我有多个地址? – user85748 2009-05-21 15:18:19

您可以通过参考本教程和Pragmatic Programmers

Advanced Rails Recipes