Rails where 条件与嵌套关联

mde*_*gis 3 activerecord ruby-on-rails

假设我有Delivery一个模型,其中有一个Postman并且Postman有许多Teams。

例如,我希望获得特定团队 ID = 1 的所有交付。

我尝试过:

Delivery.joins(:postman).where(:postmans => {team_ids: 1})
Run Code Online (Sandbox Code Playgroud)

但我没能得到它们。我怎样才能实现这个目标?

Pav*_*van 5

你应该像下面这样做

Delivery.joins(:postman => :teams).where(:postman => {teams: {id: 1}})
Run Code Online (Sandbox Code Playgroud)