在ruby on rails

时间:2015-08-08 21:17:20

标签: ruby-on-rails checkbox

我有两个复选框,需要独占。

%p Are you a Borrower or Lender?
        = f.check_box :borrower, {}, "true", "false"
        Borrower
        = f.check_box :lender, {}, "true", "false"
        Lender

如何更改此设置,以便用户只能选择borrowerlender选项?目前,可以检查两个方框。

编辑#2:

因此,根据我的理解,我需要给radio_button指定相同的名称,以免混淆浏览器然后定义方法。请提供一些指导如何编写这样的方法。

= f.radio_button(:lender_or_borrower, :lender)
Lender
= f.radio_button(:lender_or_borrower, :borrower)
Borrower

1 个答案:

答案 0 :(得分:1)

正如您在评论中提到的那样,因为在语义上只有一次选择一个选项才有意义,所以您应该使用select或radio_buttons。 例如,select可能如下所示:

f.select(:borrower_or_lender, [['Borrower, borrower'],  ['Lender', 'lender']])

另见http://guides.rubyonrails.org/form_helpers.html#select-boxes-for-dealing-with-models

编辑:对于单选按钮:两个单选按钮需要具有相同的方法/属性(传递给帮助程序的第一个参数):

= f.radio_button(:borrower_or_lender, 'borrower')
Borrower
= f.radio_button(:borrower_or_lender, 'lender')
Lender

另请参阅http://guides.rubyonrails.org/form_helpers.html#radio-buttonshttp://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html#method-i-radio_button