我想对多棵树中的对象进行分类以反映它们的特征并在其上建立导航。
因此,给定以下树:
Category1
-Category-1-1
-Category-1-2
Category2
-Category-2-1
-Category-2-2
--Category-2-2-1
一个对象可以例如属于Category-1-2 和Category-2-2-1。
目标是能够从数据库中获取所有对象
- 属于某个类别的
- 属于某个类别或其后代的
一个更实际的例子:
一个类别可能具有“工具 > 园艺工具 > 刀具”的层次结构。
第二类:“硬物 > 金属物 > 小金属物”
对象“Pruners”将被归类为“Cutters”以及“Small metal objects”。
我希望能够
- 检索所有“园艺工具”->“修枝剪”
- 检索“园艺工具”->“刀具”的所有类别子项
- 检索所有“硬对象”->“修剪器”
- 检索所有也是“切割器”->“修枝器”的“硬物”
- 检索所有也是“刀具”的“软对象”-> [] 任何指针?我已经简要地查看了closure_tree、awesome_nested_sets 等,但我不确定它们是否合适。