Rails:通过关联创建直通记录

如果有人有更好的头衔,请告诉我:p

我有以下型号:

class Car has_many :car_drivers has_many :drivers, :through => :car_drivers end class Driver has_many :car_drivers has_many :cars, :through => :car_drivers end class CarDriver belongs_to :car belongs_to :driver end 

现在我想通过Car创建一个新的Driver,但是也应该创建join-table(car_drivers)中的记录。 我尝试了以下操作,但是在创建汽车记录时,连接表记录不是: driver_object.cars.create

在这种情况下,最佳做法是什么?

以下是创建Car新实例,但不将其与Driver实例关联。

 driver_object.cars.create 

以下作品

 driver_object.cars << Car.create(...) 

ActiveRecord中的<<方法将新创建的Car实例附加到Driver上的:cars集合调用save on Driver ,创建CarDriver实例以将新Cardriver_object相关driver_object