我有3个模型,(用户,工作和评论)。评论有一个job_id字段和作业有user_id
字段。In my models...
Users: has_many :jobs
Jobs: belongs_to :user
has_many :reviews
Reviews: belongs_to :job
如何编写查询来收集特定user.id的所有评论?
这是我找到的解决方案
Review.joins(job: :user).where(users: {id: 1})
上面语句对应的查询是
SELECT "reviews".* FROM "reviews" INNER JOIN "jobs" ON "jobs"."id" = "reviews"."job_id" INNER JOIN "users" ON "users"."id" = "jobs"."user_id" WHERE "users"."id" = ? [["id", 1]]