如何以轨道形式处理多个模型

时间:2009-05-21 12:08:02

标签: ruby-on-rails forms

http://weblog.rubyonrails.org/2009/1/26/nested-model-forms

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

2 个答案:

答案 0 :(得分:25)

两个选项:

首先是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虽然运作良好。

还通过Google找到了railsforum post,效果很好。

答案 1 :(得分:0)

您可以通过实用程序员

来参考本教程

Advanced Rails Recipes