Class: Madmin::StaticModels::Adapters::ActiveHash

Inherits:
Madmin::StaticModels::Adapter show all
Defined in:
lib/madmin/static_models/adapters/active_hash.rb

Overview

Backend for active_hash models. Covers ActiveHash::Base and its subclasses, which includes ActiveYaml::Base, ActiveJSON::Base and ActiveFile::Base.

Constant Summary collapse

BASE_CLASSES =

Abstract base classes shipped by the active_hash gem itself.

%w[ActiveHash::Base ActiveFile::Base ActiveYaml::Base ActiveJson::Base ActiveJSON::Base]

Class Method Summary collapse

Class Method Details

.column_names(model) ⇒ Object



15
16
17
# File 'lib/madmin/static_models/adapters/active_hash.rb', line 15

def self.column_names(model)
  ([model.primary_key.to_s] + model.field_names.map(&:to_s)).uniq
end

.handles?(model) ⇒ Boolean

Returns:

  • (Boolean)


11
12
13
# File 'lib/madmin/static_models/adapters/active_hash.rb', line 11

def self.handles?(model)
  model < ::ActiveHash::Base
end

.modelsObject



19
20
21
22
23
# File 'lib/madmin/static_models/adapters/active_hash.rb', line 19

def self.models
  ObjectSpace.each_object(::ActiveHash::Base.singleton_class).reject do |model|
    model.name.nil? || BASE_CLASSES.include?(model.name)
  end
end