Module: Mongoid::Likeable

Extended by:
ActiveSupport::Concern
Defined in:
lib/mongoid/likeable.rb,
lib/mongoid/likeable/version.rb

Constant Summary collapse

VERSION =
'6.0.0'.freeze

Instance Method Summary collapse

Instance Method Details

#like(liker) ⇒ Object



14
15
16
17
18
19
# 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) ⇒ Boolean

Returns:

  • (Boolean)


28
29
30
31
# File 'lib/mongoid/likeable.rb', line 28

def liked?(liker)
  id = liker_id(liker)
  likers.include?(id)
end

#unlike(liker) ⇒ Object



21
22
23
24
25
26
# File 'lib/mongoid/likeable.rb', line 21

def unlike(liker)
  id = liker_id(liker)
  return unless liked? id
  pull likers: id
  update_likers
end