rails 3 group_by for simple active record groupings

so i have fixtures that have different seasons, i want to group and display the fixtures by season. On the fixtures index page i want the current season displayed and then link to old seasons. I was thinks some kind of group_by method?
class FixturesController < ApplicationController
 
  def index
    @fixtures = Fixture.all
  end
end

##view
<h1>Listing fixtures</h1>

<% @fixtures.each do |fixture| %>
  <%= fixture.season.title %></td>
  <td><%= fixture.event.title %></td>
  <td><%= fixture.home_team.name %></td>
  <td><%= fixture.away_team.name %></td>
  <td><%= fixture.date %></td>

class Season < ActiveRecord::Base
  has_many :fixtures
end

class Fixture < ActiveRecord::Base
  belongs_to :season
  belongs_to :event
  belongs_to :home_team, :class_name => 'Team'
  belongs_to :away_team, :class_name => 'Team'
end

Open in new window

depassionAsked:
Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

x
 
depassionConnect With a Mentor Author Commented:
i"ve solved it by creating a get_season method which works out the current season.
#application_controller
before_filter :get_season

def get_season
    @current_season = Season.where(["start_date < ? AND end_date > ?", Date.today, Date.today]).first
  end


#fixtures_view
<% @current_season.fixtures.each do |fixture| %>
...
<%end%>

Open in new window

0
 
lusfernandosCommented:
I don't know how you are getting the @fixtures in your index action ... anyway I believe you just need to order by season
something like:

@fixtures = Fixture.all(:order=>"season_id ASC")
0
 
depassionAuthor Commented:
took too long for a solution from the community so was forced to pay to get help
0
All Courses

From novice to tech pro — start learning today.