GraphQL 解析器与猫鼬引用关系



我正在使用NestJS创建一个GraphQL API,并使用Mongoose进行数据访问。我需要解析关系数据的大致方向。

我应该将猫鼬模型中的所有关系保留为 ObjectId 引用,并在需要时使用 GraphQL 解析器通过额外的查询解析它们,还是应该使用 Mongoose 引用并手动填充所有相关文档?

推荐的方法是什么?

基本上,populate猫鼬函数将执行额外的查询来查找引用的文档。所以这两个实现几乎是一回事。

但是,在过滤引用文档的情况下,我建议使用 mongoosepopulate函数,因为您可以使用match属性并直接在 mongo 数据库中应用过滤器。它将提高性能,因为您将节省带宽。

最新更新