Sha256: ce50ee6d2347f050df570991ad52722ed44a0a69b9deca39f1fa6e1b4e08646d

Contents?: true

Size: 787 Bytes

Versions: 26

Compression:

Stored size: 787 Bytes

Contents

module Graphiti::ActiveGraph
  module Resource
    module Persistence
      def update(update_params, meta = nil)
        model_instance = nil
        id = update_params[:id]
        update_params = update_params.except(:id)

        run_callbacks :persistence, :update, update_params, meta do
          run_callbacks :attributes, :update, update_params, meta do |params|
            model_instance = id ? model.find(id) : self.class._find(id: id).data
            call_with_meta(:assign_attributes, model_instance, params, meta)
            model_instance
          end

          run_callbacks :save, :update, model_instance, meta do
            model_instance = call_with_meta(:save, model_instance, meta)
          end
        end

        model_instance
      end
    end
  end
end

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
graphiti-activegraph-0.2.0 lib/graphiti/active_graph/resource/persistence.rb
graphiti-activegraph-0.1.26 lib/graphiti/active_graph/resource/persistence.rb
graphiti-activegraph-0.1.25 lib/graphiti/active_graph/resource/persistence.rb
graphiti-activegraph-0.1.24 lib/graphiti/active_graph/resource/persistence.rb
graphiti-activegraph-0.1.23 lib/graphiti/active_graph/resource/persistence.rb
graphiti-activegraph-0.1.22 lib/graphiti/active_graph/resource/persistence.rb
graphiti-activegraph-0.1.21 lib/graphiti/active_graph/resource/persistence.rb
graphiti-activegraph-0.1.20 lib/graphiti/active_graph/resource/persistence.rb
graphiti-activegraph-0.1.19 lib/graphiti/active_graph/resource/persistence.rb
graphiti-activegraph-0.1.18 lib/graphiti/active_graph/resource/persistence.rb
graphiti-activegraph-0.1.17 lib/graphiti/active_graph/resource/persistence.rb
graphiti-activegraph-0.1.16 lib/graphiti/active_graph/resource/persistence.rb
graphiti-activegraph-0.1.15 lib/graphiti/active_graph/resource/persistence.rb
graphiti-activegraph-0.1.14 lib/graphiti/active_graph/resource/persistence.rb
graphiti-activegraph-0.1.13 lib/graphiti/active_graph/resource/persistence.rb
graphiti-activegraph-0.1.12 lib/graphiti/active_graph/resource/persistence.rb
graphiti-activegraph-0.1.11 lib/graphiti/active_graph/resource/persistence.rb
graphiti-activegraph-0.1.10 lib/graphiti/active_graph/resource/persistence.rb
graphiti-activegraph-0.1.9 lib/graphiti/active_graph/resource/persistence.rb
graphiti-activegraph-0.1.8 lib/graphiti/active_graph/resource/persistence.rb