module Graphiti::Resource::Polymorphism
Public Class Methods
Source
# File lib/graphiti/resource/polymorphism.rb, line 6 def self.prepended(klass) klass.extend ClassMethods end
Public Instance Methods
Source
# File lib/graphiti/resource/polymorphism.rb, line 27 def _associate(meth, parent, other, association_name, type) child_resource = self.class.resource_for_model(parent) if child_resource.sideloads[association_name] child_resource.new.adapter .send(meth, parent, other, association_name, type) end end
Source
# File lib/graphiti/resource/polymorphism.rb, line 23 def associate(*args) _associate(:associate, *args) end
Source
# File lib/graphiti/resource/polymorphism.rb, line 19 def associate_all(*args) _associate(:associate_all, *args) end
Source
# File lib/graphiti/resource/polymorphism.rb, line 10 def serializer_for(model) if polymorphic_child? serializer else child = self.class.resource_for_model(model) child.serializer end end