Rails,连接2个表,显示计数超过1的位置

时间:2018-01-05 01:43:46

标签: ruby-on-rails

我正在组合2个表来查看该位置是否存在任何汽车,但我也希望结合where子句。

@country.car_cities.joins(:cars).group("car_cities.id").having("count(cars.id) > 0")

这很好用。这得到了所有的汽车。但我有一个名为business_model的专栏。我想与cars.where(business_model: @rental_type)

结合使用

1 个答案:

答案 0 :(得分:1)

连接表格时,可以在两边放置条件

@country.car_cities.joins(:cars)
  .where(cars: {business_model: @rental_type})
  .group("car_cities.id").having("count(cars.id) > 0")

确保按照您的意图,通过调用to_sql检查生成的SQL。