表单构建器中的单选按钮,当不(直接)映射到属性时

时间:2014-09-25 03:20:46

标签: ruby-on-rails ruby-on-rails-4 radio-button formbuilder form-helpers

我希望单选按钮更新并反映未直接映射到属性的值(它们在序列化数组中设置)。

我怎么还能在表单构建器中使用单选按钮,因为第二个参数应该反映第一个参数中属性的值?

更新
这就是通常构造radio_button助手的方式:

f.radio_button :my_attribute, false
f.radio_button :my_attribute, true

If the current value of method (my_attribute) is tag_value (false or true) the radio button will be checked.

在我的情况下,my_attribute有多个值(它是一个序列化数组)。我试图将attr_accessor作为属性的占位符,但我需要传递一个参数才能评估它的值:/

更新2
- 迭代集合是用户可以订阅的类别 - 无线电按钮对是用于订阅或不订阅每个类别的开关 - 如果订阅了某个类别,则会将其ID插入用户的my_attribute,如果取消订阅,则会将其删除。
- 此过程通常使用连接表完成,但我想将关系保存在数组中。

1 个答案:

答案 0 :(得分:0)

我不确定我是否完全理解你想要做什么,但是

之类的东西怎么样
my_attributes_array.each do |element|
  f.radio_button :my_attribute, element
end