我有一個用戶模型和一個任務模型。所有用戶都是相同的,每個用戶都可以創建一個新任務並將該任務分配給另一個用戶。在任務模型中,我有一個assigned_by
列和一個assigned_to
列,這樣任何人都可以創建一個新任務並將其分配給任何其他人。後來我希望每個用戶都能查看分配給他們的所有任務以及他們分配給其他人的所有任務。要做到這一點,我想建立一個關聯。做這樣的事情可以嗎?Rails一個模型兩個協會
class Task < ApplicationRecord
belongs_to :user, :foreign_key => 'assigned_by'
belongs_to :user, :foreign_key => 'assigned_to'
end
我在同一模型中有兩個外鍵。然後在用戶模式中,我有:
class User < ApplicationRecord
has_many :tasks
end
這是做這種事情的正確方法嗎?
可以嗎?不,第二個'belongs_to:user,:foreign_key =>'assigned_to''會覆蓋前面的關係。 – max