Module: Reform::Form::PropertyMethods
Instance Method Summary collapse
- #collection(name, options = {}, &block) ⇒ Object
- #properties(names, *args) ⇒ Object
- #property(name, options = {}, &block) ⇒ Object
- #setup_form_definition(definition) ⇒ Object
Instance Method Details
#collection(name, options = {}, &block) ⇒ Object
31 32 33 34 35 |
# File 'lib/reform/form.rb', line 31 def collection(name, ={}, &block) [:form_collection] = true property(name, , &block) end |
#properties(names, *args) ⇒ Object
37 38 39 |
# File 'lib/reform/form.rb', line 37 def properties(names, *args) names.each { |name| property(name, *args) } end |
#property(name, options = {}, &block) ⇒ Object
22 23 24 25 26 27 28 29 |
# File 'lib/reform/form.rb', line 22 def property(name, ={}, &block) (name, , &block) definition = representer_class.property(name, , &block) setup_form_definition(definition) if block_given? or [:form] create_accessor(name) end |
#setup_form_definition(definition) ⇒ Object
41 42 43 44 45 46 47 |
# File 'lib/reform/form.rb', line 41 def setup_form_definition(definition) # TODO: allow Definition.form? definition.[:form] ||= definition..delete(:extend) definition.[:parse_strategy] = :sync definition.[:instance] = true # just to make typed? work end |