Ruby on rails Rails中的简单关联

Ruby on rails Rails中的简单关联,ruby-on-rails,ruby,ruby-on-rails-4,activerecord,ruby-on-rails-3.2,Ruby On Rails,Ruby,Ruby On Rails 4,Activerecord,Ruby On Rails 3.2,我有两个模型。一个司机和一辆汽车。司机可以拥有许多汽车。一辆汽车可以被许多司机拥有。汽车型号有很多:司机,通过::汽车所有权。这很有效,一切都很好 但我只想归还所有有司机的车,类似这样: @cars = Car.where.not(drivers: nil) Car.first.drivers返回所有活动记录模型Driver的集合。我认为您需要这样的内容(假设您的汽车所有权表有一个Driver\u id列): 使用纯活动记录,此查询将是: Car.joins(:car_ownerships).

我有两个模型。一个司机和一辆汽车。司机可以拥有许多汽车。一辆汽车可以被许多司机拥有。汽车型号
有很多:司机,通过::汽车所有权
。这很有效,一切都很好

但我只想归还所有有司机的车,类似这样:

@cars = Car.where.not(drivers: nil)

Car.first.drivers
返回所有活动记录模型Driver的集合。

我认为您需要这样的内容(假设您的
汽车所有权
表有一个
Driver\u id
列):

使用纯活动记录,此查询将是:

Car.joins(:car_ownerships).where.not(car_ownerships: { driver_id: nil })

是的,这个。有没有办法在clean active record中执行此操作?请尝试以下操作:
Car.joins(:Car\u ownerships)。where.not(Car\u ownerships:{driver\u id:nil})
Awesome!你也度过了美好的一天:)
Car.joins(:car_ownerships).where.not(car_ownerships: { driver_id: nil })