Hi, By convention, if I have a field that is a reference to another record in the `users` table, all I would need to do is to name the column `user_id` and RoR would know it is a reference. However currently I am working on a table that records `actions` that both impact on another user, with each action performed by another user. Thus I'd have 2 columns like `impacted_user_id` and `actioned_by_user_id`, how do I tell raises that these 2 columns are really references to the `users` table instead of the `impacted_user` and `actioned_by_user` tables respectively? Thanks.
on 2006-02-04 06:15
on 2006-02-04 07:52
You can use the foregin key, key: has_many :done_actions, :foreign_key => 'actioned_by_user_id', :class_name => 'Action' has_many :impacted_actions, :foreign_key => 'impacted_user_id', :class_name => 'Action' belongs_to :actioned_by, :foreign_key => 'actioned_by_user_id', :class_name => 'User' belongs_to :impacted, :foreign_key => 'impacted_user_id', :class_name => 'User' Joey