Sha256: 1292f8c4973493318477c290d55825e8f746389b8cb0df895fbe5154e6ad4091
Contents?: true
Size: 603 Bytes
Versions: 1
Compression:
Stored size: 603 Bytes
Contents
module SocialEngine module Voteable def is_voteable has_many :votes, :as=>:voteable, :dependent=>:destroy include InstanceMethods end module InstanceMethods def voteable? true end def upvote(options={}) options.reverse_merge!(:value=>1) self.votes.create(options) end def downvote(options={}) options.reverse_merge!(:value=>-1) self.votes.create(options) end def vote_sum self.votes.inject(0){|sum,vote| sum = sum + vote.value} end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
social_engine-0.0.1 | app/models/social_engine/voteable.rb |