我希望能够克隆类A的对象沿着所有(克隆的)B、C和D关联。
的数据
我有A、B和D类:
A有许多B
A有_多个C
A有_多个D到B
B属于A
B有_多个D
C属于A
C有_多个D
D属于B
D属于C
例如,类D的每个对象都有属性b_id和c_id。
我希望能够克隆类A的对象沿着所有(克隆的)B、C和D关联。
根据deep_cloneable文档,我能得到的最接近的是:
A.first.deep_clone include: [ {bs: :ds}, :cs ].save
字符串
这创建了A对象的副本以及它的B和C关联的副本(根据需要)。属于B的D也被复制并与新复制的B相关联,但仍然与原始C相关联,而不是与新复制的C相关联。
类似地
A.first.deep_clone include: [ {bs: :ds}, { cs: :ds} ].save
型
D的额外集合被复制(一个集合与新的Bs相关联但不与新的Cs相关联,并且一个集合与新的Cs相关联但不与新的Cs相关联)。
我可以用deep_cloneable gem直接实现我想要的吗?
1条答案
按热度按时间h6my8fg21#
字符串
这就创建了我想要的重复。语法在文档中的“字典”下列出,尽管我不能说我发现描述或“字典”术语很容易理解。