Nested Object Form

Nested Object Form

嵌套表单

 

has_one

 

class Person < ActiveRecord::Base
  has_one :address
  accepts_nested_attributes_for :address
end

 

create record

使用之前build一下关联元素

  <% form_for @person, :url => { :action => "update" } do |person_form| %>
    ...
    <% @person.build_address unless @persion.address %>

    <% person_form.fields_for :address do |address_fields| %>
      Street  : <%= address_fields.text_field :street %>
      Zip code: <%= address_fields.text_field :zip_code %>
    <% end %>
  <% end %>

 

update record

与官方文档使用相同

 

  <% form_for @person, :url => { :action => "update" } do |person_form| %>
    ...
    <% person_form.fields_for :address do |address_fields| %>
      Street  : <%= address_fields.text_field :street %>
      Zip code: <%= address_fields.text_field :zip_code %>
    <% end %>
  <% end %>
 

References

fields_for

http://apidock.com/rails/ActionView/Helpers/FormHelper/fields_for

 

Nested model forms and nil.new_record?

http://www.pixellatedvisions.com/2009/03/18/rails-2-3-nested-model-forms-and-nil-new-record

 

Rails Form helps

http://yuan.iteye.com/blog/478988

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值