加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 轨道中单个形式的多个孩子

发布时间:2020-12-16 19:21:22 所属栏目:百科 来源:网络整理
导读:我有一个具有任意数量的子实体的模型.为简单起见,我们可以调用实体Orders和Items.我想有一个创建订单表单,我输入订单信息,以及添加任意数量的项目.如果单击“添加其他项”按钮,将添加一组新的表单元素以输入新数据,金额等. 我可以用纯粹的javascript来解决这
我有一个具有任意数量的子实体的模型.为简单起见,我们可以调用实体Orders和Items.我想有一个创建订单表单,我输入订单信息,以及添加任意数量的项目.如果单击“添加其他项”按钮,将添加一组新的表单元素以输入新数据,金额等.

我可以用纯粹的javascript来解决这个问题,但是我很确定必须有一个更神奇,更有轨可行的方法来实现它,可能是部分视图或其他东西.我只是对铁路有点太新了解它是什么.

动态添加新表单元素然后在创建控制器中访问它们的最佳方法是什么?

解决方法

无法击败Ryan Bates提供的这个 Railscasts.com教程.

Episode 196: Nested Model Form,pt. 1

这是一个只使用一个嵌套级别的示例

楷模

车型/ company.rb

class Company < ActiveRecord::Base
  has_many :people,:dependent => :destroy
  accepts_nested_attributes_for :people,:allow_destroy => true
end

车型/ person.rb

class person < ActiveRecord::Base
  belongs_to :company
end

控制器

companies_controller.rb

def new
  @company = Company.new
  3.times { person = @company.people.build }
end

查看

意见/公司/ _form.html.erb

<% form_for @company do |f| %>
  <%= f.error_messages %>

  <p>
    <%= f.label :name %><br />
    <%= f.text_field :name %>
  </p>

  <%= f.fields_for :people do |builder| %> 
    <%= render "people_fields",:f => builder %>
  <% end %>

  <p><%= f.submit "Submit" %></p>
<% end %>

意见/公司/ _people_fields.html.erb

<p>
  <%= f.label :name,"Person" %>
  <%= f.text_field :name %>
  <%= f.check_box :_destroy %>
  <%= f.label :_destroy,"Remove" %>
</p>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读