使用此代码:
candidates = Challenge.joins(:projectmilestone).where("challenges.id in (?) and projectmilestones.user_id = ?", c.subtree_ids, assignee.id)
logger.debug "candidates: #{candidates.count}"
我把它写进我的日志:
SELECT COUNT(*) FROM "challenges" INNER JOIN "projectmilestones" ON "projectmilestones"."id" = "challenges"."projectmilestone_id" WHERE (challenges.id in (1122) and projectmilestones.user_id = 123)
Candidate projectmilestones: 0
当我直接在数据库中运行查询时,结果为 1 为什么 Activerecord 告诉我结果 = 0?
请注意,当我从代码中删除“and projectmilestones.user_id”时,它会正确执行。
这让我发疯了几个小时......