Ruby on rails Rails 4在更新父属性时删除空嵌套属性的关联

Ruby on rails Rails 4在更新父属性时删除空嵌套属性的关联,ruby-on-rails,activerecord,ruby-on-rails-4,nested-attributes,Ruby On Rails,Activerecord,Ruby On Rails 4,Nested Attributes,我有一个属于用户的房子模型房子里有很多车。在我的模型中,我为声明了必要的接受\u嵌套的\u属性,并且我的嵌套属性具有相应的\u属性和id字段 我希望能够将我的汽车模型与房屋解除关联,但不能将用户解除关联 假设我有一个保存的房子对象,如下所示: “house”=>{“owner”=>“bob”,汽车属性“=>[{“id”=>1,“type”=>“toyota”},{“id”=>2,“type”=>“honda”}]} 我想从房屋中删除(但不删除)一个汽车对象,并对其进行更新,使其看起来像这样:

我有一个属于用户的房子模型房子里有很多车。在我的模型中,我为声明了必要的接受\u嵌套的\u属性,并且我的嵌套属性具有相应的\u属性和id字段

我希望能够将我的汽车模型与房屋解除关联,但不能将用户解除关联

假设我有一个保存的房子对象,如下所示:

“house”=>{“owner”=>“bob”,汽车属性“=>[{“id”=>1,“type”=>“toyota”},{“id”=>2,“type”=>“honda”}]}

我想从房屋中删除(但不删除)一个汽车对象,并对其进行更新,使其看起来像这样:

“house”=>{“owner”=>“bob”,car\u attributes“=>[{“id”=>1,“type”=>“toyota”}]

显然,当我调用
@house.update\u attributes({“owner”=>“bob”,“car\u attributes”=>[{“id”=>1,“type”=>“toyota”}])
时,
所属的关联并没有被删除。有没有简单的方法将car对象与其父对象解除关联

翻阅Rails文档,有一种收集方法
delete
就是这样做的,即将父外键设置为
null
。问题是,我必须在客户机中标记每个要解除关联的对象,将其发送过来,然后遍历每个嵌套属性并调用
delete()
在必要时手动操作,这对我来说似乎不太苛刻


是否有更简单的方法通过解除关联(而不销毁)来更新父模型它在rails中的嵌套属性?

如果删除汽车与其房屋的关联,那么它将是一个孤立的汽车对象,对吗?我这样问是因为我想知道这是否真的可以?我认为不会。如果可以,那么我希望汽车和房屋之间会有一个连接模型(也就是说,汽车是从一个列表中选择的,并且列表保持相对恒定)。那么为什么不干脆销毁汽车呢?对不起,我忘了提一下,汽车也是属于用户的,所以这辆车不会带来任何好运?