Class: PostJson::Collection

Inherits:
Object
  • Object
show all
Defined in:
lib/post_json.rb

Defined Under Namespace

Modules: Proxy

Class Method Summary collapse

Class Method Details

.[](collection_name) ⇒ Object



35
36
37
38
39
40
41
# File 'lib/post_json.rb', line 35

def [](collection_name)
  name_digest = PostJson::ModelSettings.collection_name_digest(collection_name)
  class_name = "Collection_#{name_digest}"
  model_class = Proxy.const_get(class_name)
  model_class.collection_name = collection_name
  model_class
end

.each(&block) ⇒ Object



51
52
53
# File 'lib/post_json.rb', line 51

def each(&block)
  to_a.each(&block)
end

.namesObject



43
44
45
# File 'lib/post_json.rb', line 43

def names
  ModelSettings.order('collection_name').pluck('collection_name')
end

.to_aObject



47
48
49
# File 'lib/post_json.rb', line 47

def to_a
  names.map { |collection_name| self[collection_name] }
end