【问题标题】:How to update child object in a nested form in Rails如何在 Rails 中以嵌套形式更新子对象
【发布时间】:2012-04-04 01:28:16
【问题描述】:

我有一个嵌套表单 Parent,它接受 Child 的属性。 在我的控制器#new 中,我这样做了

  @parent = Parent.new
  @parent.childs.build

嵌套的表单可以正常工作

为了更新父母和孩子,在我的控制器#edit中,我有

  @parent = Parent.find(params[:id])
  @parent.childs.build unless not @parent.childs.empty?

现在,如果我去编辑页面,只会显示父字段。我的问题是: 如何让 Rails 知道我需要 Parent 和 Child 的表单,而不仅仅是 Parent?

谢谢

【问题讨论】:

    标签: ruby-on-rails view controller parent-child nested-forms


    【解决方案1】:

    使用 fields_for 助手 - 它几乎可以为你做所有事情。

    <%= form_for @parent do |f| %>
      <%= f.text_field :name %>
      <%= f.fields_for :children, @parent.children do |c| %>
        <%= c.text_field :name %>
      <% end %>
    <% end %>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-10-19
      • 2020-12-30
      • 2023-04-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多