首页 > 解决方案 > Mongoose Materialized Path 和 Mongoose Restify 可以一起使用吗?

问题描述

我已经在 Mongoose 中实现了递归树结构的模式/模型。今天,递归树结构使用一组子节点,这些子节点是对同一模式的引用。我还为树上的基本 CRUD 方法构建了一些 REST API。

我现在想通过使用两个独立设计的包来重构我的实现,以更专业的方式完成我需要的工作:

  1. mongoose-mpath - 通过物化路径模式管理我的猫鼬树, https://www.npmjs.com/package/mongoose-mpath

  2. express-restify-mongoose - 为 mongoose 模型生成灵活的 REST 接口,https: //www.npmjs.com/package/express-restify-mongoose

在我将所有代码更改为这两种新模式之前,我想确认一下这是否是正确的方法。换句话说,快速评估我是否可以期望这两个包在我的树模式/模型上完美地协同工作,以及 express-restify-mongoose 包是否会帮助我公开 mongoose-mpath 包定义的特定方法作为 REST API:

猫鼬-mpath 包:

显然,我希望 mongoose-mpath 提供的这 6 个 get 方法也公开为 REST API!

生成 REST API 正是另一个包 express-restify-mongoose 的工作:

我的具体问题:

标签: node.jsmongodbrestexpressmongoose

解决方案


我曾经维护 express-restify-mongoose

添加到我的架构中的这两个包是否存在以某种方式干扰的风险,或者我可以相信它们会优雅地一起工作吗?

据我所知,他们不应该干涉 express-restify-mongoose 不会修补猫鼬模式。

最重要的是,有没有办法让 express-restify 也为 mongoose-mpath 包定义的 6 种方法(如上所列)生成 REST API?

express-restify-mongoose 仅​​支持 mongoose 本身,也许某种形式的中间件或钩子可能会有所帮助。

对于架构上定义的所有方法(在本例中为 MPath),这是否会自动发生,或者我是否需要手动将此类方法的代码插入到 Mongoose Restify 生成的文件夹、文件和代码中(如果是,在哪里以及如何?)

您必须手动完成。serve返回挂载端点的 URI,以便您可以使用它来定义其他路由。

还有其他替代方法可以实现我的需要吗?我知道周围还有其他 REST 生成器,但 Mongoose Restify 似乎很受欢迎,这可能是有原因的。

我不知道,但也许其他人可以参与进来!


推荐阅读