module SuperForm::Fieldable::ClassMethods
Public Instance Methods
field(field_id, field_class, options = {})
click to toggle source
# File lib/super_form/fieldable.rb, line 41 def field(field_id, field_class, options = {}) field = field_class.factory(field_id, options) add_field(field) end
fields()
click to toggle source
# File lib/super_form/fieldable.rb, line 46 def fields @fields ||= [] end
fieldset(id) { || ... }
click to toggle source
# File lib/super_form/fieldable.rb, line 50 def fieldset(id) open_fieldset(id) yield close_fieldset end
fieldsets()
click to toggle source
# File lib/super_form/fieldable.rb, line 56 def fieldsets @fieldsets ||= {} end
Private Instance Methods
add_field(field)
click to toggle source
# File lib/super_form/fieldable.rb, line 62 def add_field(field) field.setup_container(self) fields << field current_fieldset << field.name end
close_fieldset()
click to toggle source
# File lib/super_form/fieldable.rb, line 74 def close_fieldset @current = nil end
current_fieldset()
click to toggle source
# File lib/super_form/fieldable.rb, line 78 def current_fieldset fieldsets[@current] || open_fieldset(:default) end
open_fieldset(id)
click to toggle source
# File lib/super_form/fieldable.rb, line 69 def open_fieldset(id) @current = id fieldsets[@current] ||= [] end