Class: StaticRecord::Base

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

Class Method Summary collapse

Class Method Details

.allObject



24
25
26
# File 'lib/static_record.rb', line 24

def self.all
  @@all
end

.find(id) ⇒ Object



28
29
30
# File 'lib/static_record.rb', line 28

def self.find(id)
  all[id]
end

.inherited(klass) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/static_record.rb', line 10

def self.inherited(klass)
  @@all = {}
  dir = File.dirname(caller.first.chop.chop)
  base_name = "#{dir}/#{klass.to_s.tableize}"
  if File.exists?(f="#{base_name}.yml")
    results = YAML.load(IO.read f)
  else
    raise "Seed data could not be found #{base_name}.yml"
  end
  results.each do |key, value|
    @@all[key] = klass.new({:id => key}.merge(value))
  end
end