has_and_belongs_to_many refer to same Model

I have a User model and in I want to have a

has_and_belongs_to_many :users

Obviously that won't work since the join table will have the same column names (user_id).

What approach should I take?

thanks

You need to give the association a different name, and a few other things

class User    has_and_belongs_to_many :friends,                                             :class => "User",                                            :association_foreign_key => "friend_id",                                            :join_table => "friends_users" end

You then need to make a join table named "friends_users" with no primary key and user_id and friend_id columns.