3

もっといいタイトルがあれば教えてください :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 を作成したいと考えていますが、結合テーブル (car_drivers) のレコードも作成する必要があります。次のことを試しましたが、車のレコードが作成されている間、結合テーブルのレコードは作成されていません:driver_object.cars.create

この場合のベストプラクティスは何ですか?

4

1 に答える 1

8

以下は の新しいインスタンスを作成しようとしていますがCar、それをインスタンスに関連付けませんDriver

driver_object.cars.create

以下の作品

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

<<ActiveRecordのメソッドは、新しく作成されたCarインスタンスを on の:carsコレクションに追加して onをDriver 呼び出し、インスタンスを作成して newをに関連付けます。saveDriverCarDriverCardriver_object

于 2012-09-29T17:31:37.837 に答える