module Mongoid::Likeable
Constants
- VERSION
Public Instance Methods
like(liker)
click to toggle source
# File lib/mongoid/likeable.rb, line 14 def like(liker) id = liker_id(liker) return if liked? id push likers: id update_likers end
liked?(liker)
click to toggle source
# File lib/mongoid/likeable.rb, line 30 def liked?(liker) id = liker_id(liker) likers.include?(id) end
unlike(liker)
click to toggle source
# File lib/mongoid/likeable.rb, line 22 def unlike(liker) id = liker_id(liker) return unless liked? id pull likers: id update_likers end
Private Instance Methods
liker_id(liker)
click to toggle source
# File lib/mongoid/likeable.rb, line 37 def liker_id(liker) if liker.respond_to?(:_id) liker._id else liker end end
update_likers()
click to toggle source
# File lib/mongoid/likeable.rb, line 45 def update_likers update_attribute :likes, likers.size end