你在 Django 中使用过 MongoEngine 或 MongoKit 吗?你更倾向哪个?
背景:
我正在开发一个新站点,并且有正常的 Django 开发经验,但是对于我将使用的数据类型,MongoDB 将比 SQL 数据库更适合。
我使用的是 Python 2.7,可以在我的主机上编译/安装任何东西,所以这不是问题。
你在 Django 中使用过 MongoEngine 或 MongoKit 吗?你更倾向哪个?
背景:
我正在开发一个新站点,并且有正常的 Django 开发经验,但是对于我将使用的数据类型,MongoDB 将比 SQL 数据库更适合。
我使用的是 Python 2.7,可以在我的主机上编译/安装任何东西,所以这不是问题。
mongoengine 在处理模型方面会更像 django。这就是为什么我为我的项目选择它
在我看来,mongoengine 更类似于 django db 模型样式,如 mongokit,但 mongokit 更多地代表原始 mongodb 模型的样式和布局。为 MongoKit +1
如果您可以在这两个库之外进行选择,那么我会选择django-mongodb-engine,因为它是专门为 django 和管理界面构建的。
TL;DR:MongoEngine!
我有幸多次使用 MongoKit 和 MongoEngine 处理复杂的项目。
我会从头开始:GitHub 上的 MongoKit 项目已经死了。在选择正确的工具时,请始终记住,使用维护良好的项目是一个巨大的差异。有更多的功能,更少的错误,总是有人帮助你解决问题。
如果你用 MongoKit 做非常简单的事情,你会没事的。但是当使用更多功能时,我发现了越来越多的错误。其实我也提交了修复,没有人接受。另一方面,MongoEngine 社区是超级专业和活的。
在习惯了 MongoEngine 语法后,我喜欢它的每一点:)
你说你有经验
正常的Django开发
那你为什么不继续使用通常的 Django ORM 并使用连接器将其连接到 MongoDB呢?
Djongo:策略是将 Django ORM 生成的 Django SQL 查询语法转换为 pymongo 命令。Djongo 将每个 SQL 查询字符串翻译成一个 mongoDB 查询文档。
如果您想使用 Django Admin 操作 MongoDB,请启动它:
manage.py runserver
转到:http://localhost:8000/admin/
操作您的 MongoDB 嵌入式模型,如下图所示:
如果您正在寻找更多信息,有一篇关于通过添加一行代码来使用 Django 和 MongoDB的文章。否则,您可以直接跳转到djongo 文档并开始使用它。