module Redisable::Key::ClassMethods

Public Instance Methods

redis_key(name, options={}) click to toggle source

return model_name:id:field_name

# File lib/redisable/key.rb, line 9
def redis_key(name, options={})
  klass_name ||= self.name
  define_method(name) do |id_=nil|
    id_ ||= if options[:id]
              options[:id].call(self)
            elsif defined?(self.id)
              self.id
            end
    Key.join_key(klass_name, id_, name, options[:blank_field])
  end

  define_singleton_method(name) do |id_=nil|
    id_ ||= if options[:id]
              options[:id].call(self)
            elsif defined?(self.id)
              self.id
            end
    Key.join_key(klass_name, id_, name, options[:blank_field])
  end
end