module ActiveForm::Form::ClassMethods
Attributes
main_class[RW]
main_model[RW]
reflected_class[RW]
Public Instance Methods
alias_property(new_method, old_method)
click to toggle source
# File lib/activeform-rails/form.rb, line 43 def alias_property(new_method, old_method) alias_method new_method.to_sym, old_method.to_sym alias_method "#{new_method}=".to_sym, "#{old_method}=".to_sym end
i18n_scope()
click to toggle source
# File lib/activeform-rails/form.rb, line 23 def i18n_scope :activerecord end
models()
click to toggle source
# File lib/activeform-rails/form.rb, line 27 def models @models ||= [] end
properties(*attributes, prefix: false, on: nil)
click to toggle source
# File lib/activeform-rails/form.rb, line 15 def properties(*attributes, prefix: false, on: nil) if on.nil? attr_accessor *attributes else delegate_to_model(attributes, on, prefix) end end
Private Instance Methods
add_accessor(model_name)
click to toggle source
# File lib/activeform-rails/form.rb, line 54 def add_accessor(model_name) attr_accessor model_name end
add_model_on_list(model_name)
click to toggle source
# File lib/activeform-rails/form.rb, line 50 def add_model_on_list(model_name) models << model_name unless models.include?(model_name) end
assign_delegators(attributes, model_name, prefix)
click to toggle source
# File lib/activeform-rails/form.rb, line 58 def assign_delegators(attributes, model_name, prefix) attributes.each do |attribute| delegate attribute, to: model_name, prefix: prefix delegate "#{attribute}=", to: model_name, prefix: prefix end end
delegate_to_model(attributes, on, prefix)
click to toggle source
# File lib/activeform-rails/form.rb, line 65 def delegate_to_model(attributes, on, prefix) assign_delegators(attributes, on, prefix) add_model_on_list(on) add_accessor(on) end