module Formalism::ModelForms::Update

Base form for model updating

Public Class Methods

new(params, pf_or_instance) click to toggle source
Calls superclass method Formalism::ModelForms::Base::new
# File lib/formalism/model_forms/update.rb, line 26
def initialize(params, pf_or_instance)
        if pf_or_instance.is_a?(model)
                self.instance = pf_or_instance
        else
                public_send "#{primary_field_name}=", pf_or_instance
        end

        super params || {}
end

Private Instance Methods

execute() click to toggle source
Calls superclass method Formalism::ModelForms::Base#execute
# File lib/formalism/model_forms/update.rb, line 44
def execute
        instance.update(fields_and_nested_forms)
        super
end
field_changed?(field) click to toggle source
# File lib/formalism/model_forms/update.rb, line 49
def field_changed?(field)
        return true unless instance.respond_to?(field)

        public_send(field) != instance.public_send(field)
end
validate() click to toggle source
# File lib/formalism/model_forms/update.rb, line 38
def validate
        return if instance

        add_error :itself, :not_exist
end