繁体   English   中英

Parent只是GraphQL解析器中的ID

[英]Parent is only ID in GraphQL resolver

所以我有一个看起来像这样的关系mongo数据库

Location {
    _id: ...
    shopIDs: <List of Shop IDs in another collection>
}

Shops {
    _id: ...
    ...
}

此外,我已经安装了GraphQL安装程序和Schema。 但要获得一个类似的查询

locations {
    shops {
        name
    }
}

我需要创建另一个将shopIDs字段连接到商店集合的Resolver,对吧?

所以我做了类似的事情:

Location: {
        shopIDs: async ({ shopIDs }, args, context) => {
            return await Shop.find({ _id: { $in: shopIDs } });
        }
},

但是shopID是未定义的,当我控制台记录父对象时,它只是父对象的ID。 现在我的问题是:我是否真的必须再次使用mongoose查找父母以获取ShopID? 我没有找到任何相关的问题,所以我希望这还没有得到回答。 谢谢!

我不完全确定原因,但问题得到了解决。 第一个参数肯定是父参数,因此您可以从那里访问ID并查找子项,而无需再次查找父项。 如果未定义子ID,则可能是由猫鼬模型本身引起的。 因此,如果您遇到类似问题:请仔细检查您的架构并确保该字段已实际定义。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM