有没有可以与Django一起使用的NoSQL数据库?

问题描述 投票:0回答:3

我正在开发一个 Django 应用程序,它使用 Django 1.8 版本。

我们处理的大部分数据都是JSON数据。我们正在尝试实现一个 NoSQL 数据库。

但是我发现 MongoDB 与 Django 版本 1.8 不兼容。

有没有可以与Django一起使用的NoSQL数据库

>= 1.8

python django mongodb nosql
3个回答
15
投票

Django 本身并不正式支持 NoSQL 数据库。然而,有许多副项目和分支允许 Django 中的 NoSQL 功能,例如 Django non-rel

您还可以查看 wiki 页面,其中讨论了一些替代方案。

这是引用自django官方文档


10
投票

这里有一个有趣的存储库,允许使用 MongoDB 作为 django 后端。它的工作原理是将 SQL 命令编译成 MongoDB 文档查询。

大多数基本的东西,如 django admin、django session 等都可以工作。

https://github.com/nesdis/djongo


3
投票

多年后(2022 年),djongo 仍然是 NoSQL 环境中与 Django 3.0.x 配合良好(有一些约束限制)的唯一选项。

但现在 Django 4.0.1 主要版本正在酝酿之中,djongo 最新的 1.3.6(根据 pypi 于 2021 年 6 月发布)开始崩溃。根据我使用 Django==4.0.4 和 djongo==1.3.6 的经验,几乎所有选择/更新查询都不起作用,并且 SQLDecodeError 异常出现在控制台中。

djongo 维护者也创建了付费订阅计划,但我不是他们的客户,所以无法对 djongo 的商业化版本发表任何评论。休息一下,鉴于开发人员将自己限制在 Django 3.0.x 上,开源 AGPL 许可的 djongo 是不付费开发人员使用 Django 与 MongoDB 的唯一最佳选择。

具体来说,我一直在使用 Django==3.0.5 和 djongo==1.3.6,这在大多数情况下都可以正常工作。

© www.soinside.com 2019 - 2024. All rights reserved.