@@ -50,13 +50,14 @@ Indexes
50
50
51
51
{+django-odm+} does not support the following index functionalities:
52
52
53
- - Creation of ``$vectorSearch`` and ``$search`` indexes through the Django
53
+ - Creating ``$vectorSearch`` and ``$search`` indexes through the Django
54
54
Indexes API
55
55
- Creating geospatial indexes through the Django Indexes API
56
56
- Updating indexes in ``EmbeddedModelFields`` after model creation
57
57
58
58
To learn how to run unsupported database operations by operating directly on
59
- your ``MongoClient`` instance, see the :ref:`django-client-operations` guide.
59
+ your ``MongoClient`` instance, see :ref:`django-client-operations` in the
60
+ Perform Raw Database Queries.
60
61
61
62
Fields
62
63
~~~~~~
66
67
- ``ArrayField``
67
68
68
69
- {+django-odm+} does not support ``ArrayField`` polymorphism.
69
- - {+django-odm+} does not support ``EmbeddedModelField`` within an ``ArrayField``.
70
+ - {+django-odm+} does not support nesting an ``EmbeddedModelField`` within an ``ArrayField``.
70
71
71
72
- ``EmbeddedModelField``
72
73
@@ -82,28 +83,28 @@ Fields
82
83
return both JSON and SQL ``null`` values.
83
84
- Some queries with ``Q`` objects, such as ``Q(value__foo="bar")``, might
84
85
not work as expected.
85
- - Filtering with a ``None`` key incorrectly returns objects in which a key
86
+ - Filtering for ``None`` values incorrectly returns objects in which a field
86
87
does not exist.
87
88
88
89
- ``DateTimeField``
89
90
90
91
- {+django-odm+} does not support microsecond granularity for
91
- ``DateTimeField``.
92
+ ``DateTimeField``.
92
93
93
94
- ``DurationField``
94
95
95
- - The ``DurationField`` stores milliseconds rather than microseconds.
96
+ - ``DurationField`` stores milliseconds rather than microseconds.
96
97
97
98
- ``ForeignKey``
98
99
99
100
- When possible, you should use an ``EmbeddedModelField`` instead of a
100
101
``ForeignKey`` field to avoid using ``$lookup`` operations. An
101
- ``EmbeddedModelField`` emulates a MongoDB embedded document, and performs
102
+ ``EmbeddedModelField`` emulates a MongoDB embedded document and performs
102
103
better than a ``ForeignKey`` field. To learn more about how to reduce
103
104
``$lookup`` operations, see the :atlas:`Reduce $lookup Operations
104
105
</schema-suggestions/reduce-lookup-operations/>` guide in the Atlas
105
106
documentation.
106
- - The performance of `CASCADE deletes <{+django-docs+}/ref/models/fields/#foreignkey >`__
107
+ - Performance of `CASCADE deletes <{+django-docs+}/ref/models/fields/#django.db.models.CASCADE >`__
107
108
on a ``ForeignKey`` field is not as performant as using an
108
109
``EmbeddedModelField``.
109
110
@@ -133,12 +134,13 @@ Geospatial Queries
133
134
- {+django-odm+} does not have any Django lookup operators for MongoDB-specific
134
135
geospatial queries.
135
136
136
- Aggregation operators
137
+ Aggregation Operators
137
138
~~~~~~~~~~~~~~~~~~~~~
138
139
139
- {+django-odm+} does not contain any custom Django Field lookups for the MongoDB
140
- aggregation framework. Instead, use the ``raw_aggregate`` method. For more
141
- information on the ``raw_aggregate`` method.
140
+ {+django-odm+} does not contain any custom Django field lookups for the MongoDB
141
+ aggregation framework. Instead, use the ``raw_aggregate()`` method. For more
142
+ information on the ``raw_aggregate()`` method, see
143
+ the :ref:`django-raw-queries` guide.
142
144
143
145
.. TODO: Link to aggregation
144
146
0 commit comments