Rails单选按钮嵌套形式

时间:2019-03-02 15:50:07

标签: ruby-on-rails radio-button nested-forms

我希望从Rails的嵌套表格中创建主要电话号码。我的模型关联:

# customer.rb

class Customer < ApplicationRecord
  has_many :telephones, dependent: :destroy
  accepts_nested_attributes_for :telephones, allow_destroy: true
end

# telephone.rb

class Telephone < ApplicationRecord
  belongs_to :customer
  enum status: {primary: 1, secondary: 0}
end

我的表格:

# _form.html.haml

= form_with(model: customer, local: true) do |form|
 ....
 .....
 = form.fields_for :telephones do |builder|                                                          
   = render 'telephone_fields', form: builder                                                        
 = link_to_add_fields "Add Telephone", form, :telephone

在我的局部视图phone_fields中,如下所示:

# _telephone_fields

%fieldset
  .form-group
    = form.label :content, 'Telephone'

    = form.label :status
    = form.radio_button :status, "primary"

但是,这是不正确的,因为可以选择所有单选按钮。

也许有人可以提供帮助。谢谢!

1 个答案:

答案 0 :(得分:0)

您需要编写JS代码。基本上,对单选按钮进行一些介绍。添加侦听器,检查值,以及是否为某个项目选择了(主要)-为其他项目隐藏。