class ActionTracker::Models::ApplicationRecord

Public Class Methods

infer_model_name() click to toggle source
# File lib/action_tracker/models/application_record.rb, line 22
def self.infer_model_name
  class_name = name.split('::').last
  return :form if class_name == 'Form'

  class_name.chomp('Form').underscore.to_sym
end
mimic(model_name) click to toggle source
# File lib/action_tracker/models/application_record.rb, line 14
def self.mimic(model_name)
  @model_name = model_name.to_s.underscore.to_sym
end
mimicked_model_name() click to toggle source
# File lib/action_tracker/models/application_record.rb, line 18
def self.mimicked_model_name
  @model_name || infer_model_name
end
model_name() click to toggle source
# File lib/action_tracker/models/application_record.rb, line 29
def self.model_name
  ActiveModel::Name.new(self, nil, mimicked_model_name.to_s.camelize)
end

Public Instance Methods

model_name() click to toggle source
# File lib/action_tracker/models/application_record.rb, line 33
def model_name
  self.class.model_name
end
present_attributes() click to toggle source
# File lib/action_tracker/models/application_record.rb, line 41
def present_attributes
  attributes.reject { |_key, value| value.blank? }
end
to_key() click to toggle source
# File lib/action_tracker/models/application_record.rb, line 37
def to_key
  [id]
end