Class: SportDb::Model::GroupStanding
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- SportDb::Model::GroupStanding
- Defined in:
- lib/sportdb/models/stats/group_standing.rb
Class Method Summary collapse
-
.recalc!(opts = {}) ⇒ Object
convenience helper; recalcs all records.
Instance Method Summary collapse
Class Method Details
.recalc!(opts = {}) ⇒ Object
convenience helper; recalcs all records
15 |
# File 'lib/sportdb/models/stats/group_standing.rb', line 15 def self.recalc!( opts={} ) self.order(:id).each { |rec| rec.recalc!(opts) }; end |
Instance Method Details
#recalc!(opts = {}) ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/sportdb/models/stats/group_standing.rb', line 18 def recalc!( opts={} ) ## will calculate group standing e.g. ## calc points (pts) - loop over all group games/matches # group.games.each do |game| # end recs = StandingsHelper.calc( group.games, opts ) ## - remove (if exit) old entries and add new entries entries.delete_all # note: assoc dependent set to :delete_all (defaults to :nullify) ## add empty entries group.teams.each do |team| puts " adding entry for team #{team.title} (#{team.code})" rec = recs[ team.key ] # find (in-memory) stats records entries.create!( team_id: team.id, pos: rec.pos, played: rec.played, won: rec.won, drawn: rec.drawn, lost: rec.lost, goals_for: rec.goals_for, goals_against: rec.goals_against, pts: rec.pts ) end end |