module ActsAsFavorite::Favoriter::InstanceMethods

Public Instance Methods

favorite(favorable) click to toggle source
# File lib/acts_as_favorite/favoriter.rb, line 25
def favorite(favorable)
  unless self.favorite?(favorable)
    favorites.create(favorable_id: favorable.id, favorable_type: favorable.class.base_class.name)
  end
end
favorite?(favorable) click to toggle source

instance methods

# File lib/acts_as_favorite/favoriter.rb, line 21
def favorite?(favorable)
  favorites.find_by(favorable_id: favorable.id, favorable_type: favorable.class.base_class.name).present?
end
unfavorite(favorable) click to toggle source
# File lib/acts_as_favorite/favoriter.rb, line 31
def unfavorite(favorable)
  records = favorites.find_by(favorable_id: favorable.id, favorable_type: favorable.class.base_class.name)
  records.try(:destroy)
end
update_favorite(favorable) click to toggle source
# File lib/acts_as_favorite/favoriter.rb, line 36
def update_favorite(favorable)
  records = favorites.find(favorable.id)
  records.update_attributes(favorable_id: favorable.id, favorable_type: favorable.class.base_class.name)
end