我有一个对象Person
,它有两个父Person
个。我希望能够在Person
(当前未定义)时收到my_person.parents
个对象的数组。我目前正在使用祖先宝石,这似乎限制你单亲。有什么方法可以用宝石完成我想要的东西,或者有没有人有任何其他建议?
由于
答案 0 :(得分:3)
这实际上是一种多对多关系(Person拥有并且属于许多父母)。您需要从Person到自身的has_and_belongs_to_many
关系,以及连接表。
请点击此处查看示例:ActiveRecord relationships for a join table linking two records of the same table?
答案 1 :(得分:0)
Ancestry只支持1位父母。
父母存储在
类型的字符串中ancestry = "/grandparent_id/parent_id"
因此父母只有一个插槽。见https://github.com/stefankroes/ancestry/issues/94
我认为祖先可能不是最适合你的解决方案。可能想尝试colsure树或其他插件