class MongoModel::Associations::Base::Association
Attributes
definition[R]
instance[R]
Public Class Methods
new(definition, instance)
click to toggle source
# File lib/mongomodel/concerns/associations/base/association.rb, line 10 def initialize(definition, instance) @definition, @instance = definition, instance end
Public Instance Methods
ensure_class(value)
click to toggle source
# File lib/mongomodel/concerns/associations/base/association.rb, line 23 def ensure_class(value) unless value.is_a?(klass) || value.class.name.constantize <= klass.name.constantize raise AssociationTypeMismatch, "#{klass} expected, got #{value.class}" end end
proxy()
click to toggle source
# File lib/mongomodel/concerns/associations/base/association.rb, line 14 def proxy @proxy ||= proxy_class.new(self) end
replace(obj)
click to toggle source
# File lib/mongomodel/concerns/associations/base/association.rb, line 18 def replace(obj) proxy.target = obj proxy end
Protected Instance Methods
proxy_class()
click to toggle source
# File lib/mongomodel/concerns/associations/base/association.rb, line 30 def proxy_class self.class.parent::Proxy rescue Base::Proxy end