Module: CuteKV::Associations::ClassMethods
- Defined in:
- lib/cute_kv/associations.rb
Instance Method Summary collapse
- #backend ⇒ Object
- #connect(class_obj) ⇒ Object
- #create(key, ids = []) ⇒ Object
- #draw(k, v, object, r_v, r_k) ⇒ Object
- #find(key) ⇒ Object
- #find_or_create(key) ⇒ Object
- #gen_key(k, v, object, r_v, r_k) ⇒ Object
Instance Method Details
#backend ⇒ Object
143 144 145 |
# File 'lib/cute_kv/associations.rb', line 143 def backend @backend end |
#connect(class_obj) ⇒ Object
128 129 130 131 |
# File 'lib/cute_kv/associations.rb', line 128 def connect(class_obj) @backend = class_obj.backend @class_obj = class_obj end |
#create(key, ids = []) ⇒ Object
137 138 139 140 141 |
# File 'lib/cute_kv/associations.rb', line 137 def create(key,ids=[]) ids = serialize ids @backend[key] = ids new(key, ids) end |
#draw(k, v, object, r_v, r_k) ⇒ Object
155 156 157 158 |
# File 'lib/cute_kv/associations.rb', line 155 def draw(k, v, object, r_v, r_k) key = gen_key(k, v, object, r_v, r_k) find_or_create(key) end |
#find(key) ⇒ Object
133 134 135 |
# File 'lib/cute_kv/associations.rb', line 133 def find(key) new(key, @backend[key]) if @backend[key] end |
#find_or_create(key) ⇒ Object
147 148 149 |
# File 'lib/cute_kv/associations.rb', line 147 def find_or_create(key) find(key) || create(key, []) end |
#gen_key(k, v, object, r_v, r_k) ⇒ Object
151 152 153 |
# File 'lib/cute_kv/associations.rb', line 151 def gen_key(k, v, object, r_v, r_k) key = "#{k}##{v}##{object.id}#relations##{r_v}##{r_k}" end |