class Couchbase::Model::Relationship::Association
Attributes
auto_delete[R]
auto_load[R]
auto_save[R]
class_name[R]
name[RW]
Public Class Methods
new(name, options = {})
click to toggle source
# File lib/couchbase/model/relationship/association.rb, line 8 def initialize(name, options = {}) self.name = name.to_s @auto_save = options[:auto_save] @auto_delete = options[:auto_delete] @class_name = options[:class_name] @auto_load = options.key?(:auto_load) ? options[:auto_load] : true end
Public Instance Methods
child_class()
click to toggle source
# File lib/couchbase/model/relationship/association.rb, line 34 def child_class child_klass.constantize end
child_klass()
click to toggle source
# File lib/couchbase/model/relationship/association.rb, line 30 def child_klass @class_name || name.classify end
fetch(parent)
click to toggle source
# File lib/couchbase/model/relationship/association.rb, line 20 def fetch(parent) parent.send(name) end
load(parent)
click to toggle source
# File lib/couchbase/model/relationship/association.rb, line 24 def load(parent) child_id = child_class.prefixed_id(parent.id) child_class.find_by_id(child_id) end
loaded?(parent)
click to toggle source
# File lib/couchbase/model/relationship/association.rb, line 16 def loaded?(parent) parent.send("#{name}_loaded?") end
prefix()
click to toggle source
# File lib/couchbase/model/relationship/association.rb, line 38 def prefix child_class.id_prefix end