QuerySet.distinct respects query. Closes #64.
This commit is contained in:
parent
4012722a8d
commit
556eed0151
@ -649,7 +649,7 @@ class QuerySet(object):
|
||||
|
||||
.. versionadded:: 0.4
|
||||
"""
|
||||
return self._collection.distinct(field)
|
||||
return self._cursor.distinct(field)
|
||||
|
||||
def only(self, *fields):
|
||||
"""Load only a subset of this document's fields. ::
|
||||
|
@ -1038,9 +1038,13 @@ class QuerySetTest(unittest.TestCase):
|
||||
self.Person(name='Mr Orange', age=20).save()
|
||||
self.Person(name='Mr White', age=20).save()
|
||||
self.Person(name='Mr Orange', age=30).save()
|
||||
self.assertEqual(self.Person.objects.distinct('name'),
|
||||
['Mr Orange', 'Mr White'])
|
||||
self.assertEqual(self.Person.objects.distinct('age'), [20, 30])
|
||||
self.Person(name='Mr Pink', age=30).save()
|
||||
self.assertEqual(set(self.Person.objects.distinct('name')),
|
||||
set(['Mr Orange', 'Mr White', 'Mr Pink']))
|
||||
self.assertEqual(set(self.Person.objects.distinct('age')),
|
||||
set([20, 30]))
|
||||
self.assertEqual(set(self.Person.objects(age=30).distinct('name')),
|
||||
set(['Mr Orange', 'Mr Pink']))
|
||||
|
||||
def test_custom_manager(self):
|
||||
"""Ensure that custom QuerySetManager instances work as expected.
|
||||
|
Loading…
x
Reference in New Issue
Block a user