Include preliminary support for text indexes

To index a text field, prefix the field name with `$`, as in `$title`.
This commit is contained in:
Clay McClure
2014-05-29 19:06:51 -04:00
parent cfbb283f85
commit 74bd7c3744
5 changed files with 22 additions and 5 deletions

View File

@@ -727,7 +727,6 @@ class IndexesTest(unittest.TestCase):
report.to_mongo())
self.assertEqual(report, Report.objects.get(pk=my_key))
def test_string_indexes(self):
class MyDoc(Document):
@@ -741,6 +740,19 @@ class IndexesTest(unittest.TestCase):
self.assertTrue([('provider_ids.foo', 1)] in info)
self.assertTrue([('provider_ids.bar', 1)] in info)
def test_text_indexes(self):
class Book(Document):
title = DictField()
meta = {
"indexes": ["$title"],
}
indexes = Book.objects._collection.index_information()
self.assertTrue("title_text" in indexes)
key = indexes["title_text"]["key"]
self.assertTrue(('_fts', 'text') in key)
if __name__ == '__main__':
unittest.main()