has_many through - how to use middle model's info?


How can I use the information in the "middle" table of a :has_many
through relationship? Here's an example:

Club and Student have a :has_many through relationship with each other.

class Club < ActiveRecord::Base
  has_many :memberships, :dependent => :destroy
  has_many :students, :through => :memberships

class Student < ActiveRecord::Base
  has_many :memberships, :dependent => :destroy
  has_many :clubs, :through => :memberships

# middle model
class Membership < ActiveRecord::Base
  belongs_to :student
  belongs_to :club

Here is the table for "memberships"
id - integer
club_id - integer
student_id - integer
joined_on - datetime

If I have @club_id, and I want to find all students that joined that
club on a certain date, how can I do that?

How can I do something like this
Club.find_by_id(@club_id, :include => :students)
and specify the "joined_on" date?

Thanks for any help.

To get the memberships, you can:

@memberships = @club.memberships.all(:conditions => {:created_on => date})

Then now you simply have to get the students of each membership.