module TouchTouch::Toucher::ClassMethods
Public Instance Methods
touch_alias(*args)
click to toggle source
# File lib/touch_touch/toucher.rb, line 13 def touch_alias(*args) al = args.first.to_s pa = args.second classs = pa[:class] limit = pa[:limit] class_name = classs.name.downcase define_method(al.to_sym) do |arg| raise(ClassNotDefined, "Class is not defined") unless arg.instance_of? classs redis = TouchTouch::Redis.new redis.set(self.class, self.id, al, arg.class, arg.id, limit) end define_method("#{al}_#{class_name.pluralize}".to_sym) do redis = TouchTouch::Redis.new touchee_ids = redis.get(self.class, self.id, al, classs) classs.find(touchee_ids) end end