我的模型有一个多对多的关系,教练可以指导多个团队,一个团队可以有多个教练。(助理、主管等)
在 Rails 控制台中,当我运行时:
@coach = Coach.joins(:teams).select("coaches.first_name, coaches.last_name, teams.team_level")
返回:
=> [#<Coach first_name: "john", last_name: "doe">]
请注意,它不会返回teams.team_level
,所以我不能@coach.team_level
在我的视图中使用
当我这样做时.to_sql
,它会返回:
=> "SELECT coaches.first_name, coaches.last_name, teams.team_level
FROM `coaches`
INNER JOIN `coach_teams` ON `coach_teams`.`coach_id` = `coaches`.`id`
INNER JOIN `teams` ON `teams`.`id` = `coach_teams`.`team_id`
这是我所期望的......所以当我对我的数据库运行这个查询时,我得到了预期的字段。
我在这里做错了什么/我没有看到什么?感谢您查看这个!