impress/app/models/pet_attribute.rb

27 lines
555 B
Ruby
Raw Normal View History

class PetAttribute < StaticResource
def self.find_by_name(name)
@objects_by_name[name.downcase]
end
private
def self.data_source
"#{to_s.downcase.pluralize}.txt"
end
def self.process_line(line)
name = line.chomp.downcase
@objects << @objects_by_name[name] = species = new
species.id = @objects.size
species.name = name
end
def self.fetch_objects!
@objects = []
@objects_by_name = {}
File.open(Rails.root.join('config', data_source)).each do |line|
process_line(line)
end
end
end