有没有办法使用 Motor 定义 MongoDB 模式?

Is there a way to define a MongoDB schema using Motor?

有一种方法可以在 NodeJS 中使用 mongoose 定义 MongoDB 集合模式。 Mongoose 在 运行 查询时验证模式。

我一直无法在 Python/Tornado 中为 Motor 找到类似的东西。有没有一种方法可以在 Motor 中实现类似的效果,或者是否有一个包可以为我做到这一点?

不,没有。 Motor 是一个 MongoDB 驱动程序,它可以执行基本操作,但没有提供很多便利。对象文档映射器 (ODM) 库(如 MongoTor)基于 Motor 构建,可提供模式验证等高级功能。

我不为 MongoTor 担保。谨慎行事。考虑您是否真的需要 ODM:mongodb 的原始数据格式非常接近 Python 类型,大多数应用程序不需要在其代码和驱动程序之间添加层。

目前(2019 年)如果您需要 sync/async Python MongoDB ODM,这个项目 Umongo https://github.com/Scille/umongo 似乎更加活跃和有用。它与 PyMongo 或 Motor 等多个驱动程序配合使用以实现异步。 文档在这里:http://umongo.readthedocs.io