How to use find method on table with two column index

I created an index with person_id and club_id but I can't figure out how to properly access it (doesn't show up in the find_by... lists)

Can someone provide me a sample find statement to best use this index

Thanks.

class CreateMembers < ActiveRecord::Migration   def self.up     create_table :members do |t|       t.integer :club_id       t.integer :person_id       t.text :comment       t.string :status       t.string :member_type       t.integer :registrations_count

      t.timestamps     end

    add_index :members, :club_id     add_index :members, :person_id     add_index :members, [:person_id, :club_id]   end

  def self.down     drop_table :members   end end

I created an index with person_id and club_id but I can't figure out how to properly access it (doesn't show up in the find_by... lists)

Can someone provide me a sample find statement to best use this index

You don't need to do anything explicitly - just find :all, :conditions => ... will use the index if needed (you may have been looking for find_by_xxx_and_yyy though) The index on person_id is usually superfluous - when you have a multicolumn index then any left prefix of that index is also an index ie the index on [:person_id, :club_id] can be used as an index on just person_id

Fred

Hi there

What you are trying to find is (I think it's the easiest option )

class CreateListSongs < ActiveRecord::Migration   def self.up     create_table :members, :primary_key =>[:club_id, :person_id] do |t|          t.integer :club_id          t.integer :person_id          t.text :comment          t.string :status          t.string :member_type          t.integer :registrations_count          t.timestamps

    end   end

  def self.down     drop_table :members   end end

Hope this helps

Best regards

  Miquel