I’m a little bit confused here. I have 2 models:
User
Ticket
- A Ticket belongs to one User as a “reporter”.
-
A Ticket belongs to one User as “assigned”.
-
A User has many Tickets (twice ?)
So here what I’ve got:
# Table name: tickets
#
# id :integer not null, primary key
# label :string(255)
# content :text
# reported_by_id :integer
# assigned_to_id :integer
# created_at :datetime
# updated_at :datetime
#
class Ticket < ActiveRecord::Base
belongs_to :reported_by, :class_name => 'User'
belongs_to :assigned_to, :class_name => 'User'
end
# Table name: users
#
# id :integer not null, primary key
# login :string(255)
# password :string(255)
# created_at :datetime
# updated_at :datetime
#
class User < ActiveRecord::Base
has_many :tickets, :class_name => 'Ticket', :foreign_key => 'reported_by_id'
has_many :tickets, :class_name => 'Ticket', :foreign_key => 'assigned_to_id'
end
I would like to do “aUser.tickets” and get all user’s tickets that he reported.
Any help ?
Thx !
You should differentiate the names of your has_many in your User model:
Now call
Otherwise, your code looks right on target.