【发布时间】:2019-09-21 15:26:39
【问题描述】:
在我的应用程序中,可以通过执行以下操作找到员工的所有团队报告人
User.where(primary_reporter: "some unique code of a user")
其中主要报告者是需要获取其团队报告者的用户。
但是我现在试图递归地找到所述用户的报告者和他的团队成员的报告者形成一个层次结构图。在那里找不到任何东西。
我的用户模型是这样的:
class User
has_many :reportees, lambda { |user| includes(:actor).where [" .
(users.status = 1)"] }, class_name: 'User', foreign_key:
'primary_reporter'
end
class Actor
has_one: user
end
我正在为数据库使用 postgres
【问题讨论】:
-
我认为您可以使用此处所述的递归查询postgresqltutorial.com/postgresql-recursive-query
-
根据您的使用情况,您是否查看过嵌套集模型?
-
你也可以使用ancestry gem
标签: sql ruby-on-rails ruby postgresql