module FreeForm::Model::ClassMethods
Public Instance Methods
child_model(name, opts={}, &block)
click to toggle source
# File lib/freeform/form/model.rb, line 31 def child_model(name, opts={}, &block) declared_model(name) @child_models = (@child_models || []) << name # Defines an initializer method, such as 'initialize_address' # that can be called on form initialization to build the model define_method("initialize_#{name}") do instance_variable_set("@#{name}", instance_eval(&block)) end end
child_models()
click to toggle source
# File lib/freeform/form/model.rb, line 14 def child_models @child_models ||= [] end
declared_model(name, opts={})
click to toggle source
# File lib/freeform/form/model.rb, line 25 def declared_model(name, opts={}) attr_accessor name @models = (@models || []) << name end
Also aliased as: form_model
declared_models(*names)
click to toggle source
# File lib/freeform/form/model.rb, line 18 def declared_models(*names) names.each do |name| declared_model(name) end end
Also aliased as: form_models
models()
click to toggle source
# File lib/freeform/form/model.rb, line 10 def models @models ||= [] end