使用 JSON-Schema 定义模式并使用 Mongoose?

define a schema with JSON-Schema and use Mongoose?

你好, 我有一个症结要忍受猫鼬。 有没有办法将 JSON-Shema 与 Mongoose Schemas 一起使用? 假设我想使用像 JSON-Schema 这样的标准来定义我的 API 数据模式,因为它很好。 好像要用Mongoose的时候需要重新定义一下/MongoDB! 这是我想避免的一些丑陋的重复。理想情况下,更改 JSON-架构定义也会更改 MongoDB 架构。 如果我使用 JOI.JS 验证库,则会出现类似的问题。 有没有人找到解决方案? 或者有其他方法吗?

谢谢

试试这个库:https://www.npmjs.com/package/json-schema-to-mongoose 还有其他库。我创建了 json-schema-to-mongoose,因为其他库不太符合我的需要。

此外,我喜欢使用 TypsonTypeScript 生成 json-schema。它使得 json-schema 更加静态类型化。

更新

看来 Typson 项目已结束。这是另一个 (typescript-json-schema) 做同样事情的项目,虽然我从未使用过它。

插在这里,因为我也 运行 遇到过这个问题,并找到了替代所提供建议的解决方案。

可以使用 https://github.com/nijikokun/generate-schema 获取普通 JS 对象并将其转换为 JSON Schema 和 Mongoose Schema。我发现这个工具在使用验证和持久性改造现有代码的情况下更容易,因为您可能已经有一个示例对象可以开始。