工具#
已经编写了许多工具来处理 PyMongo . 如果您知道或已经创建了一个从Python使用MongoDB的工具,请在这里列出。
备注
我们尽量保持这份名单的最新情况。因此,最近没有更新或似乎未维护的项目偶尔会从列表中删除或移到后面(以防止列表变得太可怕)。
如果一个项目被删除,仍在开发或正在使用中,请让我们知道或添加回来。
类ORM层#
有些人发现他们更喜欢使用比PyMongo提供的功能更多的层。通常,模型和验证之类的东西是需要的。为此,不同的作者编写了几个不同的类似ORM的层。
我们建议新用户从直接使用PyMongo开始,如本文其余部分所述。许多人发现PyMongo的特性已经足够满足他们的需要。即使您最终决定使用其中一个层,直接与驱动程序一起工作的时间也会增加您对MongoDB实际工作原理的理解。
- MongoEngine
MongoEngine 是在PyMongo之上的另一个类似ORM的层。它允许您使用受Django ORM启发的语法定义文档和查询集合的模式。该代码可在 GitHub ;有关更多信息,请参阅 tutorial 。
- MincePy
MincePy 是一种对象-文档映射器(ODM),旨在使任何Python对象在MongoDB数据库中都可以存储和查询。它的设计考虑到了机器学习和大数据计算和实验科学应用,但它完全是通用的,对于希望组织、共享或处理大量数据的任何人都很有用,而对他们当前的工作流程尽可能少的更改。
- 明
Ming (无情)是一个库,允许您在Python应用程序中的MongoDB数据库上强制实施模式。它是由 SourceForge 在他们迁移到MongoDB的过程中。见 introductory blog post 了解更多详细信息。
- MotorEngine
MotorEngine 是MongoEngine到Motor的一个端口,用于与Tornado异步访问。它实现了相同的建模api以便于数据移植,这意味着MongoEngine中定义的模型可以在MotorEngine中读取。来源是 available on GitHub .
- 乌蒙果
uMongo is a Python MongoDB ODM. Its inception comes from two needs: the lack of async ODM and the difficulty to do document (un)serialization with existing ODMs. Works with multiple drivers: PyMongo, TxMongo, motor_asyncio, and mongomock. The source is available on GitHub
不再维护#
- PyMODM公司
PyMODM 是一个建立在PyMongo之上的类似ORM的框架。PyMODM由MongoDB,Inc.的工程师维护,并迅速采用MongoDB的新功能。PyMODM是一个“核心”ODM,这意味着它提供了简单、可扩展的功能,其他库可以利用这些功能来瞄准像Django这样的平台。同时,PyMODM功能强大,可以单独用于开发应用程序。有关完整的文档,请访问 readthedocs 。
- MongoKit
这个 MongoKit 框架是一个类似ORM的层,位于PyMongo之上。还有一个MongoKit google group .
- 米莫戈
minimongo 是MongoDB的轻量级python接口。它保留了pymongo的查询和更新API,并提供了许多附加特性,包括一个简单的面向文档的接口、连接池、索引管理以及集合和数据库命名助手。这个 source is on GitHub .
- 漫画
Manga 目标是在PyMongo之上创建一个更简单的类似ORM的层。定义模式的语法受Django-ORM的启发,但Pymongo的查询语言得到了维护。来源 is on GitHub .
- 狐猴
Humongolus 是一个面向Python和MongoDB的轻量级ORM框架。这个名字来自MongoDB和 Homunculus (一个完整的人体模型的概念)。Humongolus允许您创建具有健壮验证的模型/模式。它尝试尽可能的python,并尽可能公开pymongo游标对象。代码可以下载 at GitHub . GitHub也提供教程和使用示例。
框架工具#
本节列出了为使用各种Python框架和库而设计的工具和适配器。
Djongo 是一个连接器,用于使用Django和MongoDB作为数据库后端。使用Django Admin图形用户界面在MongoDB中添加和修改文档。这个 Djongo Source Code 托管在GitHub上,并且 Djongo package 正在播放的是Pypi。
Django MongoDB Engine 是Django的MongoDB数据库后端,它完全集成了它的ORM。了解更多信息 see the tutorial .
mango 为Django会话和身份验证提供MongoDB后端(绕过
django.db
完全)。Django MongoEngine is a MongoDB backend for Django, an example:. For more information see https://django-mongoengine.readthedocs.io/en/latest/
mongodb_beaker 是一个可以使用MongoDB作为后端的项目 beakers 缓存/会话系统。 The source is on GitHub 。
Log4Mongo 是一个灵活的Python日志处理程序,可以使用普通集合和capped集合在MongoDB中存储日志。
MongoLog 是一个Python日志处理程序,它使用capped集合在MongoDB中存储日志。
rod.recipe.mongodb 是一个用于下载和安装MongoDB的ZC构建方法。
mongobox 是一个从python应用程序中运行沙盒MongoDB实例的工具。
Flask-MongoAlchemy 使用MongoAlchemy为MongoDB添加Flask支持。
Flask-MongoKit 扩展烧瓶,以便更好地将MongoKit整合到烧瓶中。
Flask-PyMongo Flask PyMongo连接了Flask和PyMongo。
替代驾驶员#
这些是PyMongo的替代品。