module EventCounter::ActiveRecordExtension::CountableInstanceMethods
This module defines instance methods for a countable model
Public Instance Methods
data_for(name, opts = {})
click to toggle source
# File lib/event_counter/active_record_extension.rb, line 45 def data_for(name, opts = {}) self.class.data_for(name, id, opts) end
down!(*args)
click to toggle source
# File lib/event_counter/active_record_extension.rb, line 39 def down!(*args) opts = args.extract_options! opts.merge!(vector: :down) rotate_counter(*args, opts) end
up!(*args)
click to toggle source
# File lib/event_counter/active_record_extension.rb, line 33 def up!(*args) opts = args.extract_options! opts.merge!(vector: :up) rotate_counter(*args, opts) end
Private Instance Methods
rotate_counter(*args)
click to toggle source
# File lib/event_counter/active_record_extension.rb, line 51 def rotate_counter(*args) opts = args.extract_options! name, val = args unless respond_to?(name) self.class.counter_error!(:not_found, name: name) end send(name).change(val, opts) end