【发布时间】:2019-11-12 17:16:02
【问题描述】:
我有一个 json 数据的类别数组,其结构如下。
我的目标是当我将“id”作为路由参数传递时,
- 我应该得到与 id 匹配的类别。
- 如果收到的类别对象有字段
hasSubCategory=false,那么我应该返回类别文档作为响应。 - 但是如果收到的category对象有字段
hasSubCategory=true,我应该再次执行db操作,通过检查对象id是否匹配json数组的parentId来查询所有子类别。在这种情况下,如果子类别再次有hasSubCategory=true,需要另一个查询以使用json数组的parentId检查当前obj的id。当收到的子类别也有hasSubCategory=true,需要另一个查询。所以它应该查询直到hasSubCategory=false。
简单来说,如果下面的对象有hasSubCategory=true,我应该检查整个json数据对象id是否匹配任何一个parentId。
在上面的 json 中,我们可以看到第一个对象的 _id 用其他对象的 parentId 表示。子类别的 _id 可以用作任何其他对象的 parentId。因此子类别可能有使用其 id 作为 parentId 的子类别。
这些类别可能有更深层次的子类别,有些则没有。我正在尝试使其动态化。
我想要得到的最终结果是所有没有任何进一步子类别的类别 ID (hasSubCategory=false)
【问题讨论】:
标签: javascript node.js mongodb