Class: Tramway::Core::ApplicationRecord

Inherits:
ActiveRecord::Base
  • Object
show all
Extended by:
Enumerize
Includes:
PgSearch::Model
Defined in:
app/models/tramway/core/application_record.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.file_extensionsObject



56
57
58
# File 'app/models/tramway/core/application_record.rb', line 56

def file_extensions
  @extensions
end

.human_attribute_name(attribute_name, *_args) ⇒ Object



33
34
35
36
37
38
39
40
# File 'app/models/tramway/core/application_record.rb', line 33

def human_attribute_name(attribute_name, *_args)
  excepted_attributes = %w[created_at updated_at state]
  if attribute_name.to_s.in? excepted_attributes
    I18n.t "activerecord.attributes.tramway/core/application_record.#{attribute_name}"
  else
    super attribute_name
  end
end

.photo_versionsObject



52
53
54
# File 'app/models/tramway/core/application_record.rb', line 52

def photo_versions
  @versions
end

.search_by(*attributes, **associations) ⇒ Object



42
43
44
# File 'app/models/tramway/core/application_record.rb', line 42

def search_by(*attributes, **associations)
  pg_search_scope :full_text_search, against: attributes, associated_against: associations
end

.uploader(attribute_name, uploader_name, **options) ⇒ Object



46
47
48
49
50
# File 'app/models/tramway/core/application_record.rb', line 46

def uploader(attribute_name, uploader_name, **options)
  mount_uploader attribute_name, "#{uploader_name.to_s.camelize}Uploader".constantize
  @versions = options[:versions] if uploader_name == :photo
  @extensions = options[:extensions]
end

Instance Method Details

#creatorObject



27
28
29
# File 'app/models/tramway/core/application_record.rb', line 27

def creator
  audits.where(action: :create).first.user
end

#human_state_nameObject

FIXME: detect inhertited locales



62
63
64
# File 'app/models/tramway/core/application_record.rb', line 62

def human_state_name
  I18n.t "activerecord.state_machines.tramway/core/application_record.state.states.#{state}"
end