所以我有一个看起来像这样的关系mongo数据库
Location {
_id: ...
shopIDs: <List of Shop IDs in another collection>
}
Shops {
_id: ...
...
}
我还已经安装了GraphQL安装程序和架构。但是要获得
这样的查询locations {
shops {
name
}
}
我需要创建另一个将shopIDs字段连接到shop集合的解析器,对吧?
所以我做了类似的事情:
Location: {
shopIDs: async ({ shopIDs }, args, context) => {
return await Shop.find({ _id: { $in: shopIDs } });
}
},
但是shopID是未定义的,当我通过控制台记录父对象时,它只是父ID。 现在我的问题是:我真的必须再次用猫鼬查找父母以获得ShopID吗? 我还没有找到任何相关的问题,所以希望这个问题尚未得到解答。 谢谢!
答案 0 :(得分:0)
我不确定原因为何,但问题已解决。 第一个参数无疑是父级,因此您可以从那里访问ID并可以查找子级,而无需再次查找父级。 如果未定义Child ID,则可能是由猫鼬模型本身引起的。因此,如果您遇到类似的问题:仔细检查您的架构,并确保该字段已实际定义。