Module: ActsAsAble::Liker::InstanceMethods

Defined in:
lib/acts_as_able/liker.rb

Instance Method Summary collapse

Instance Method Details

#like(obj) ⇒ Object

赞某对象



19
20
21
# File 'lib/acts_as_able/liker.rb', line 19

def like(obj)
  self.likes.find_or_create_by(likable_type: class_name(obj), likable_id: obj.id)
end

#like?(obj) ⇒ Boolean

是否赞了某对象

Returns:

  • (Boolean)


29
30
31
# File 'lib/acts_as_able/liker.rb', line 29

def like?(obj)
  !like_by(obj).blank?
end

#likings(likable_type) ⇒ Object

查看某种类型踩的所有对象



34
35
36
# File 'lib/acts_as_able/liker.rb', line 34

def likings(likable_type)
  return likable_type.constantize.where(id: self.likes.where(likable_type: likable_type).pluck(:likable_id))
end

#unlike(obj) ⇒ Object

取消对某对象的赞



24
25
26
# File 'lib/acts_as_able/liker.rb', line 24

def unlike(obj)
  like_by(obj).destroy
end