Module: LikeSystem::Likee

Extended by:
ActiveSupport::Concern
Defined in:
lib/like_system/likee.rb

Overview

Likee module

This module defines likee behavior in like system

Instance Method Summary collapse

Instance Method Details

#is_likee?Boolean

Specifies if self can be liked by LikeSystem::Liker objects

Returns:

  • (Boolean)


33
34
35
# File 'lib/like_system/likee.rb', line 33

def is_likee?
  true
end

#liked_by?(liker) ⇒ Boolean

Specifies if self is liked by a LikeSystem::Liker object

Parameters:

Returns:

  • (Boolean)


43
44
45
# File 'lib/like_system/likee.rb', line 43

def liked_by?(liker)
  Like.likes?(liker, self)
end

#likers_by(klass) ⇒ ActiveRecord::Relation

Retrieves a scope of LikeSystem::Like objects that likes self filtered LikeSystem::Liker type

Parameters:

  • klass (Class)
    • the Class to filter

Returns:

  • (ActiveRecord::Relation)


53
54
55
# File 'lib/like_system/likee.rb', line 53

def likers_by(klass)
  Like.scope_by_likee(self).scope_by_liker_type(klass)
end