我正在使用一个使用Django 1.8版本的Django应用程序。
我们处理的大多数数据都是JSON格式的。我们正试图实现任何NoSQL数据库。
但我发现MONGODB不兼容1.8以上版本,有没有任何可以有效映射到Django 1.8或更高版本的NoSQL数据库?
提前致谢。
我正在使用一个使用Django 1.8版本的Django应用程序。
我们处理的大多数数据都是JSON格式的。我们正试图实现任何NoSQL数据库。
但我发现MONGODB不兼容1.8以上版本,有没有任何可以有效映射到Django 1.8或更高版本的NoSQL数据库?
提前致谢。
Django本身不支持NoSQL数据库。但是有一些侧重于Django的项目和分支,提供了在Django中使用NoSQL功能的方法,例如Django non-rel。
你还可以查看维基页面,其中讨论了一些替代方案。
这是引用自Django官方文档的内容。
这里有一个有趣的存储库,可以让您将 MongoDB 作为 Django 后端使用。它通过将 SQL 命令编译成 MongoDB 文档查询来工作。
大多数基本内容,如 Django 管理员、Django 会话等都可以正常运行。
但现在,随着Django 4.0.1主要版本的推出,djongo的最新版本1.3.6(根据pypi发布于2021年6月)开始出现问题。在我使用Django == 4.0.4和djongo == 1.3.6的经验中,几乎没有选择/更新查询工作,并且SQLDecodeError异常在控制台中出现。
djongo维护者还创建了付费订阅计划,但我不是他们这样的客户,因此无法对djongo的商业化版本发表评论。除此之外,开源AGPL许可的djongo是未付费开发人员使用Django与MongoDB的唯一最佳选择,前提是开发人员将自己限制在Django 3.0.x上。
具体来说,我一直在使用Django == 3.0.5和djongo == 1.3.6,它在大多数情况下都很好用。