lib/earth/pet/species.rb in earth-0.5.0 vs lib/earth/pet/species.rb in earth-0.5.2

- old
+ new

@@ -1,18 +1,31 @@ class Species < ActiveRecord::Base set_primary_key :name + create_table do + string 'name' + integer 'population' + float 'diet_emission_intensity' + string 'diet_emission_intensity_units' + float 'weight' + string 'weight_units' + float 'marginal_dietary_requirement' + string 'marginal_dietary_requirement_units' + float 'fixed_dietary_requirement' + string 'fixed_dietary_requirement_units' + float 'minimum_weight' + string 'minimum_weight_units' + float 'maximum_weight' + string 'maximum_weight_units' + end + scope :thoroughly_researched, :conditions => 'marginal_dietary_requirement IS NOT NULL' falls_back_on :diet_emission_intensity => lambda { weighted_average :diet_emission_intensity, :weighted_by => :population }, # kg CO2 / joule :marginal_dietary_requirement => lambda { Species.marginal_dietary_requirement_fallback }, :fixed_dietary_requirement => 0, # force a zero intercept to be respectful of our tiny tiny animal friends :weight => lambda { weighted_average :weight, :weighted_by => :population } # kg - data_miner do - tap "Brighter Planet's species data", Earth.taps_server - end - class << self def [](name) find_by_name name.to_s end