以下是模型关联
class Driver
has_many :cars
validates :cars, presence: true
endclass Car
belongs_to :driver
end汽车记录已经存在。它不需要有驱动程序
id为% 1的第一辆车被分配给driver %1
driver1.car_ids = [1]driver1现在有一辆车
现在我们用car 1创建driver 2
driver2.car_ids = [1]driver1变得无效,因为它不再有汽车
处理这个问题的最好方法是什么?
发布于 2020-04-08 22:17:21
失败的原因是,在您当前的设置中,一辆车只能有一个司机。由于您将driver1分配给汽车,然后将driver2分配给汽车,因此driver2将覆盖driver1,使driver2成为汽车所有者。如果你想在一辆车里有很多司机,你应该将你的设置更改为:
class Car
has_many :drivers
end这将允许你为你的车分配多个司机(或者只有一个司机,如果这是你的意图)。
发布于 2020-04-08 21:37:36
您的关联失败,因为虽然一个司机可以在您的设置中有多辆车,但一辆车属于一个司机。您需要使用连接表和has_and_belongs_to_many关联。
https://stackoverflow.com/questions/61092359
复制相似问题