I have the following three tables: user, role and project.
Should I simply do it some other way?
I did something similar using an Observer to create the join object. The reason for this was that I needed to create a join when either one side was created or the other side was. So in one Observer, I could watch both models, and respond to either one.
Walter
Thanks. I just got it working by doing this:
has_and_belongs_to_many :users, :join_table => "projects_roles_users", :foreign_key => 'role_id', :association_foreign_key => 'project_id', :insert_sql => 'INSERT INTO projects_roles_users(project_id,role_id,user_id) VALUES(#{id}, #{role_ids}, #{user_ids})'
Thanks. I just got it working by doing this:
has_and_belongs_to_many :users, :join_table => "projects_roles_users", :foreign_key => 'role_id', :association_foreign_key => 'project_id', :insert_sql => 'INSERT INTO projects_roles_users(project_id,role_id,user_id) VALUES(#{id}, #{role_ids}, #{user_ids})'