Skip to content

Commit d6ad9a1

Browse files
committed
INTPYTHON-348 aggregate via raw_mql
1 parent 5707234 commit d6ad9a1

File tree

2 files changed

+18
-12
lines changed

2 files changed

+18
-12
lines changed

django_mongodb/manager.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,6 @@
33

44

55
class MongoManager(BaseManager.from_queryset(MongoQuerySet)):
6-
def get_queryset(self):
7-
return MongoQuerySet(self.model, using=self._db)
6+
pass
7+
# def get_queryset(self):
8+
# return MongoQuerySet(self.model, using=self._db)

django_mongodb/query.py

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,11 @@
88
from django.db.models.expressions import Case, Col, When
99
from django.db.models.functions import Mod
1010
from django.db.models.lookups import Exact
11-
from django.db.models.query import BaseIterable
11+
from django.db.models.query import BaseIterable, RawQuerySet
1212
from django.db.models.sql.constants import INNER, GET_ITERATOR_CHUNK_SIZE
1313
from django.db.models.sql.datastructures import Join
1414
from django.db.models.sql.where import AND, OR, XOR, ExtraWhere, NothingNode, WhereNode
15-
from django.db.models.sql import Query
15+
from django.db.models.sql import Query, RawQuery
1616
from django.utils.functional import cached_property
1717
from pymongo.errors import BulkWriteError, DuplicateKeyError, PyMongoError
1818

@@ -311,11 +311,16 @@ def register_nodes():
311311

312312
class MongoQuerySet(QuerySet):
313313
def raw_mql(self, raw_query, params=(), translations=None, using=None):
314-
return QuerySet(self.model, RawQuery(self.model, raw_query))
315-
316-
317-
class RawQuery(Query):
318-
319-
def __init__(self, model, raw_query):
320-
super(RawQuery, self).__init__(model)
321-
self.raw_query = raw_query
314+
return MongoRawQuerySet(
315+
raw_query,
316+
model=self.model,
317+
params=params,
318+
translations=translations,
319+
using=using,
320+
)
321+
322+
class MongoRawQuery(RawQuery):
323+
pass
324+
325+
class MongoRawQuerySet(RawQuerySet):
326+
pass

0 commit comments

Comments
 (0)