我不熟悉协会,也没有丰富的知识。
以下是我的用例:
有两种模式:
- >员工(作为团队负责人)可以对其团队成员(员工)进行评级
仅在has_many
之间采用employee to rating
关系是否是个好主意?
另外,我有点困惑,我将如何能够在Team Lead
登录会话中分别显示团队负责人及其团队成员的评级。
请帮忙。
答案 0 :(得分:1)
ratings
表应包含giver_id
和employee_id
列。然后:
class Employee < ActiveRecord::Base
has_many :given_ratings, foreign_key: :giver_id, class_name: Rating
has_many :ratings
end
class Rating < ActiveRecord::Base
belongs_to :giver, class_name: Employee
belongs_to :employee
end
然后对于任何员工,以下应该有效:
team_lead = # fetch employee however
team_lead.ratings # ratings given TO this employee
team_lead.given_ratings # ratings given BY this employee