0

我正在使用acts_as_tree gem 来实现一个类别列表,自由职业者可以在其中选择类别和子类别。“网页设计”是子类别之一,它应该有两个父类:“设计”和“网页开发”。有没有办法用acts_as_Tree gem 实现两个父母?

例如:

web_development.children.create({:label => 'Web Design'})
design.children.create({:label => 'Web Design'})

上面的代码与我想要做的很接近,除了它将分为两个类别,称为“网页设计”。我只想要一个,但我希望它有两个父母。

4

1 回答 1

0

如果一个节点可以有两个父节点,那么结构就不是一棵树,是吗?

答案是否定的——一个类别不能有两个父级,因为类别的父级在一对多关系中定义为父列上的外键。除非您更改基础结构,否则无法分配两个父母:

belongs_to :parent, :class_name => name, :foreign_key => configuration[:foreign_key], :counter_cache => configuration[:counter_cache]
于 2014-03-09T18:51:21.260 回答