Overview
在此页面上,您可以找到有关 Django MongoDB后端支持和不支持的功能的信息。您还可以找到当前计划用于正式发布 (GA) 和发布后版本的功能。我们将根据用户需求对这些即将推出的功能进行优先级排序,您可以通过 创建 JIRA 问题 请求对某项功能的支持。
MongoDB功能
本节将说明 Django MongoDB后端是否支持各种MongoDB功能,以及我们计划在 GA发布中支持哪些功能。
重要
在计划的 GA 支持列中带有复选标记 (✓
) 的不支持的MongoDB功能计划在稍后的 2025 正式发布中提供。但是,不保证一定会支持。
索引支持
MongoDB功能 | 当前支持 | 计划内的 GA 支持 |
---|---|---|
Atlas Search和Atlas Vector Search索引 | ✓ | ✓ |
复合索引 | ✓ | ✓ |
嵌入式文档索引 | ✓ | ✓ |
地理空间索引 | 不支持。您无法使用 Django Indexes API创建这些索引,但可以通过公开 MongoClient来使用PyMongo驱动程序。 | ✓ |
多键索引 | ✓ | ✓ |
部分索引 | ✓ | ✓ |
单字段索引 | ✓ | ✓ |
Unique indexes | ✓ | ✓ |
在创建模型后更新 | 不支持。 | ✓ |
| 不支持。 | ✓ |
数据类型支持
Django MongoDB后端当前支持下表中未包含的所有MongoDB数据类型。要查看支持类型的完整列表,请参阅创建模型指南的MongoDB BSON字段部分。
BSON 数据类型 | 当前支持 | 计划内的 GA 支持 |
---|---|---|
| 部分支持。您可以使用 | ✓ |
| 部分支持。您可以使用
| 计划提供部分支持。我们计划添加对在创建后注册 |
| 不支持。 | 不支持。不过,我们计划在正式发布后的版本中支持这种类型。 |
查询支持
MongoDB功能 | 当前支持 | 计划内的 GA 支持 |
---|---|---|
聚合操作 | 部分支持。Django MongoDB后端不包括MongoDB聚合框架的自定义 Django字段查找,但您可以使用 raw_aggregate() 方法。 | 未计划提供全面支持。不过,我们计划在 GA 后发布中添加对MongoDB聚合操作符的支持。 |
Atlas Search 查询 | 部分支持。您不能使用 Django | ✓ |
删除操作 | ✓ | ✓ |
地理空间查询 | 部分支持。您不能使用 Django | ✓ |
插入操作 | ✓ | ✓ |
读取操作 | ✓ | ✓ |
更新操作 | ✓ | ✓ |
向量搜索查询 | 部分支持。您不能使用 Django | ✓ |
数据库和集合支持
MongoDB功能 | 当前支持 | 计划内的 GA 支持 |
---|---|---|
异步支持 | ✓ | ✓ |
身份验证 | ✓ | ✓ |
缓存数据存储 | ✓ 使用 | ✓ |
Change Streams | 不支持。 | 不支持。不过,我们计划在正式发布后的版本中添加对此功能的支持。 |
客户端字段级加密和Queryable Encryption | 不支持。 | ✓ |
集合交互 | ✓ | ✓ |
数据库交互 | ✓ | ✓ |
GridFS | 不支持。 | 不支持。不过,我们计划在正式发布后的版本中添加对此功能的支持。 |
一个集合有多个模型 | 不支持。 | ✓ |
表示文档 | ✓ 使用模型表示MongoDB文档。 | ✓ |
模式验证 | 不支持。 | 不支持。不过,我们计划在正式发布后的版本中添加对此功能的支持。 |
时间序列数据 | ✓ | ✓ |
事务 | 不支持。 | ✓ |
Django 功能
本节将说明 Django MongoDB后端是否支持各种 Django 功能,以及我们计划在 GA发布中支持哪些功能。
重要
在 General Availability Support(正式可用性支持)列中带有复选标记 (✓
) 的不支持的 Django 功能计划在稍后的 2025 GA发布中提供。但是,不保证一定会支持。
字段类型支持
Django MongoDB后端当前支持下表中未包含的所有 Django字段类型。要查看支持字段的完整列表,请参阅“创建模型”指南的Django 字段部分。
Django 字段类型 | 当前支持 | 计划内的 GA 支持 |
---|---|---|
| 不支持。也不支持 | 不支持。 |
| 不支持。 | 不支持。 |
| 部分支持。您可以使用此字段类型,但有以下限制:
| 未计划提供全面支持。 |
| 部分支持。您可以使用此字段类型,但有以下限制:
| 未计划提供全面支持。 |
| 部分支持。您可以使用此字段类型,但有以下限制:
| 未计划提供全面支持。 |
| 不支持。 | 不支持。 |
| 部分支持。您可以使用此字段类型,但有以下限制:
| 未计划提供全面支持。不过,我们计划在 GA 后发布中解决 |
查询支持
Django MongoDB后端目前支持下表中未包含的所有 Django QuerySet
方法。要查看支持的方法,请参阅 Django 文档中的QuerySet API。
Django QuerySet 功能 | 当前支持 | 计划内的 GA 支持 |
---|---|---|
| 部分支持。不能使用此方法执行跨多个集合的查询。 | 未计划提供全面支持。 |
| 不支持。 | 不支持。 |
| 不支持。 | 不支持。 |
| 不支持。但是,您可以使用 | 未计划提供全面支持。 |
| 部分支持。不能使用此方法执行跨多个集合的查询。 | 未计划提供全面支持。 |
数据库函数支持
Django MongoDB后端当前支持下表中未包含的所有数据库函数。要查看函数的完整列表,请参阅 Django 文档中的数据库函数。
管理支持
Django 功能 | 当前支持 | 计划内的 GA 支持 |
---|---|---|
Django Admin | ✓ | ✓ |
Django 表单 | ✓ | ✓ |
Django 身份验证 | ✓ | ✓ |
管理命令 | 部分支持。要查看不支持的命令,请参阅以下部分。 | 未计划提供全面支持。 |
管理命令支持
Django MongoDB后端当前支持下表中未包含的所有管理命令。要查看命令的完整列表,请参阅 Django 文档中的可用命令。
Django 命令 | 当前支持 | 计划内的 GA 支持 |
---|---|---|
| 不支持。请改用 Django MongoDB后端的 | 不支持。 |
| 不支持。 | ✓ |
| 不支持。 | 不支持。不过,我们计划在正式发布后的版本中支持该命令。 |
| 不支持。 | ✓ |
| 不支持。 | 不支持。 |
| 不支持。 | 不支持。 |
迁移支持
Django 功能 | 当前支持 | 计划内的 GA 支持 |
---|---|---|
通过迁移命令创建、删除和更新索引 | 部分支持。您无法更新嵌入式模型或大量字段上的索引。 | 未计划提供全面支持。 |
不支持。 | 不支持。 | |
| 不支持。 | 不支持。 |
第三方库支持
库 | 当前支持 | 计划内的 GA 支持 |
---|---|---|
部分支持。支持大多数使用案例。 | 部分支持。此发布将概述使用案例限制。 | |
部分支持。支持大多数使用案例。 | 部分支持。此发布将概述使用案例限制。 | |
部分支持。支持大多数使用案例。 | 部分支持。此发布将概述使用案例限制。 | |
部分支持。支持大多数使用案例。 | 部分支持。此发布将概述使用案例限制。 |