这是我目前的代码:
project_ids = ProjectEnrollment.unscoped.where(user: self).pluck(:project_id)
Project.where(id: project_ids)
我确定必须有更好的方法。谢谢!
编辑:我已经使用了has_many关系中的方法,并为另一个案例使用了作用域项目。
答案 0 :(得分:1)
在您的用户模型中:
has_many :project_enrollments, -> { unscoped }
has_many :projects, through: :project_enrollments
在ProjectEnrollment模型中:
belongs_to :user
belongs_to :project
然后你可以做
user.projects