parent
479545300c
commit
17547cf120
@ -0,0 +1,21 @@
|
|||||||
|
module Likeable
|
||||||
|
extend ActiveSupport::Concern
|
||||||
|
|
||||||
|
included do
|
||||||
|
has_many :praise_treads, as: :praise_tread_object, dependent: :destroy
|
||||||
|
end
|
||||||
|
|
||||||
|
def liked?(praiseable)
|
||||||
|
praiseable.praise_treads.exists?(user_id: self.id)
|
||||||
|
end
|
||||||
|
|
||||||
|
def like!(praiseable)
|
||||||
|
praiseable.praise_treads.create!(user_id: self.id)
|
||||||
|
end
|
||||||
|
|
||||||
|
def unlike!(praiseable)
|
||||||
|
obj = praiseable.praise_treads.find_by(user_id: self.id)
|
||||||
|
obj.destroy! if obj.present?
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
@ -0,0 +1,3 @@
|
|||||||
|
json.name praise.user.real_name
|
||||||
|
json.login praise.user.login
|
||||||
|
json.image_url url_to_avatar(praise.user)
|
@ -0,0 +1,4 @@
|
|||||||
|
json.total_count @praises.size
|
||||||
|
json.praises do
|
||||||
|
json.partial! 'praise', collection: @praises, as: :praise
|
||||||
|
end
|
Loading…
Reference in new issue