lib/redis/objects.rb in redis-objects-0.8.0 vs lib/redis/objects.rb in redis-objects-0.9.0

- old
+ new

@@ -107,10 +107,15 @@ gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2'). gsub(/([a-z\d])([A-Z])/,'\1_\2'). downcase end + def redis_field_redis(name) #:nodoc: + klass = first_ancestor_with(name) + return klass.redis_objects[name.to_sym][:redis] || self.redis + end + def redis_field_key(name, id=nil, context=self) #:nodoc: klass = first_ancestor_with(name) # READ THIS: This can never ever ever ever change or upgrades will corrupt all data # I don't think people were using Proc as keys before (that would create a weird key). Should be ok if key = klass.redis_objects[name.to_sym][:key] @@ -146,11 +151,16 @@ module InstanceMethods # Map up one level to make modular extend/include approach sane def redis() self.class.redis end def redis_objects() self.class.redis_objects end + def redis_field_redis(name) #:nodoc: + return self.class.redis_field_redis(name) + end + def redis_field_key(name) #:nodoc: - self.class.redis_field_key(name, send(self.class.redis_id_field), self) + id = send(self.class.redis_id_field) + self.class.redis_field_key(name, id, self) end end end end