2013-07-25 63 views
0

你好,我有嵌套形式,我需要訪問我自己的輸入標籤通過功能提交在後模型軌如何訪問自定義輸入表單字段

accepts_nested_attributes_for :address, :reject_if => lambda { |a| a[:city].blank? } 

我有用戶的形式和地址形式是嵌套,我添加複選框到表單。我如何訪問它?

例如:

<%= f.label :telephone %><br /> 
    <%= f.text_field :telephone %> 

<input type="checkbox" id="addAddress"/> Fill Address 
<%= f.fields_for :address do |builder| %> 

    <%= builder.label :name, "Name" %><br /> 
    <%= builder.text_field :name, :disabled => true %> 

我需要通過lambda函數訪問複選框的狀態,這可能嗎?謝謝

回答

1

你可以在模型中使用的訪問是這樣的:

attr_accessor :add_address 

,並在您的形式:

<%= f.check_box :add_address %> 

然後在您的拉姆達可以查詢add_address

+0

值你好,謝謝你,我認爲這將工作,如果在嵌套的形式,我將有該複選框,但複選框是主要形式..所以我怎麼能檢查他們在我的模型?我有 'accepts_nested_attributes_for:地址:reject_if => user.add_address'但它不能正常工作,謝謝 – Muflix

+0

如果我使用 'accepts_nested_attributes_for:地址:reject_if =>拉姆達{!user.add_address} accepts_nested_attributes_for:公司,::reject_if => lambda {!user.add_company}' 提交後顯示錯誤 '無法批量分配受保護的屬性:add_address,add_company(即時通訊使用2個類似的嵌套表單)' – Muflix

+0

好吧,我只是擁有它..我需要添加:add_address to attr_accessible和nested_att看起來像這樣'accept_nested_attributes_for:address,:reject_if =>!:add_address' – Muflix

相關問題