Добавьте это к app/inputs/arbitrary_boolean_input.rb
:
class ArbitraryBooleanInput < SimpleForm::Inputs::BooleanInput
def input(wrapper_options = nil)
tag_name = "#{@builder.object_name}[#{attribute_name}]"
template.check_box_tag(tag_name, options['value'] || 1, options['checked'], options)
end
end
, затем используйте его в своих представлениях, например:
= simple_form_for(@some_object, remote: true, method: :put) do |f|
= f.simple_fields_for @some_object.some_nested_object do |nested_f|
= nested_f.input :some_param, as: :arbitrary_boolean
т.е. вышеописанная реализация правильно поддерживает вложенные поля.Другие решения, которые я видел, не делают.
Примечание: Этот пример - HAML.