671 Commits

Author SHA1 Message Date
Ross Lawley
5e7efcc8c2 Added 'hint' support, telling Mongo the proper index to use for the query.
Judicious use of hints can greatly improve query performance. When doing a query
on multiple fields (at least one of which is indexed) pass the indexed field as
a hint to the query. Hinting will not do anything if the corresponding index
does not exist.  The last hint applied to this cursor takes precedence over all
others.

Closes #203
2011-06-17 12:43:28 +01:00
Ross Lawley
62c8823e64 Fixing requirements
Test requirements are not install requirements!
2011-06-17 11:39:53 +01:00
Ross Lawley
5cc9188c5b Improved validation of (Generic)Reference fields 2011-06-16 15:25:09 +01:00
Ross Lawley
5e8604967c Fixes for django Q query rendering bug
Ensures that the QNodes haven't already been processed
Fixes #185
2011-06-16 15:00:10 +01:00
Ross Lawley
cae3f3eeff Fixes pickling issue with choice fields
Removes the dynamic __get_field_display partials before pickling
2011-06-16 12:50:45 +01:00
Ross Lawley
22a7ee5885 Handle old named (referenced) docs
Refs #199
2011-06-16 09:56:54 +01:00
Ross Lawley
658b85d327 Inconsistent setting of '_cls' broke inherited document referencing
Fixes #199
2011-06-15 16:51:49 +01:00
Ross Lawley
967e72723b Added note to item_frequencies method.
Current implementation is relatively simple, for complex schemas
the user will have to write their own map reduce.
2011-06-15 14:55:38 +01:00
Ross Lawley
5411cc5573 Updated changelog 2011-06-15 11:30:10 +01:00
Ross Lawley
ffb3e8b7b9 Added help_text and verbose_name to fields
closes #192
2011-06-15 11:28:41 +01:00
Ross Lawley
94cad89e32 Fixes to item_frequencies - now handles path lookups
fixes #194
2011-06-15 11:22:27 +01:00
Ross Lawley
0338ac17b1 Fixes multiple assignment issue preventing saves
Thanks to @wpjunior for the ticket and testcase
Also fixed bug in BaseList
fixes #195
2011-06-15 08:57:46 +01:00
Ross Lawley
cb1dfdfac6 Fixes to signals
The sender is the class of the document not the instance - easier to
hook into
2011-06-14 16:56:04 +01:00
Ross Lawley
576db9ca88 Fixes DateTimeField handling of date objects.
Fixes #191
2011-06-14 15:09:03 +01:00
Ross Lawley
4c2b83d9ca Remove errant __delete__ method 2011-06-14 15:00:26 +01:00
Ross Lawley
7cb24446ec Merge remote branch 'origin/dev' into dev 2011-06-14 14:36:30 +01:00
Ross Lawley
0ed79a839d Added delta tracking to documents.
All saves on exisiting items do set / unset operations only on changed fields.
* Note lists and dicts generally do set operations for things like pop() del[key]
  As there is no easy map to unset and explicitly matches the new list / dict

fixes #18
2011-06-14 14:35:38 +01:00
Ross Lawley
e518c51de3 Merge pull request #193 from colinhowe/dev
Improved Validation warnings - Thanks Colin Howe
2011-06-13 12:52:31 -07:00
Ross Lawley
ea35fb1c54 More robust _present_fields additions 2011-06-13 12:49:09 +01:00
Ross Lawley
7b29378319 Fixes issue converting to mongo 2011-06-13 12:40:12 +01:00
Colin Howe
82fbe7128f Improve validation warnings 2011-06-10 17:31:42 +01:00
Colin Howe
c1fadcac85 Merge remote branch 'upstream/dev' into dev 2011-06-10 16:50:44 +01:00
Ross Lawley
fd7f882011 Save no longer tramples over documents now sets or unsets explicit fields.
Fixes #146, refs #18
Thanks @zhangcheng for the initial code
2011-06-09 16:09:06 +01:00
Ross Lawley
fb09fde209 Updated changelog 2011-06-09 14:26:52 +01:00
Ross Lawley
b2848b8519 Added ComplexDateTimeField
Thanks to @pelletier for the code.
Refs #187
2011-06-09 14:20:21 +01:00
Ross Lawley
417bb1b35d Added regression test for #185 2011-06-09 12:15:36 +01:00
Ross Lawley
199b4eb860 Added django_tests and regression test for order_by
Refs #190
2011-06-09 12:08:37 +01:00
Ross Lawley
a66417e9d0 pep8 update 2011-06-09 11:31:47 +01:00
Ross Lawley
b9255f73c3 Updated docs 2011-06-09 11:28:57 +01:00
Ross Lawley
4b9bacf731 Added ComplexBaseField
* Handles the efficient lazy dereferencing of DBrefs.
* Handles complex nested values in ListFields and DictFields
* Allows for both strictly declared ListFields and DictFields where the embedded
value must be of a field type or no restrictions where the values can be a mix
of field types / values.
* Handles DBrefences of documents where allow_inheritance = False.
2011-06-09 11:25:24 +01:00
Ross Lawley
602d7dad00 Improvements to Abstract Base Classes
Added test example highlighting what to do to migrate a class from
complex (allows inheritance) to simple.
2011-06-08 17:10:26 +01:00
Ross Lawley
d32dd9ff62 Added _get_FIELD_display() for handy choice field display lookups
closes #188
2011-06-08 13:07:08 +01:00
Ross Lawley
28b7ef2304 Merge remote branch 'origin/dev' into dev 2011-06-08 13:06:47 +01:00
Ross Lawley
6dc2672dba Updated changelog 2011-06-08 13:03:42 +01:00
Ross Lawley
9a949984ee Merge pull request #189 from colinhowe/dev-notypesindex
Thanks @colinhowe!
2011-06-08 04:40:54 -07:00
Colin Howe
aa32d43014 Pydoc update 2011-06-08 12:36:32 +01:00
Colin Howe
4174918476 Merge in upstream dev 2011-06-08 12:33:36 +01:00
Colin Howe
6081fc6faf Merge remote branch 'upstream/dev' into dev 2011-06-08 12:24:06 +01:00
Colin Howe
7c62fdc0b8 Allow for types to never be auto-prepended to indices 2011-06-08 12:20:58 +01:00
Ross Lawley
3c88faa889 Updated slave_okay syntax
Now inline with .timeout() and .snapshot().
Made them chainable - so its easier to use and added tests for cursor_args
2011-06-08 12:06:26 +01:00
Ross Lawley
d15f5ccbf4 Added _slave_okay to clone 2011-06-08 10:41:08 +01:00
Ross Lawley
cfcd77b193 Added tests displaying datetime behaviour.
Updated datetimefield documentation
2011-06-08 10:33:56 +01:00
Ross Lawley
525c25b9f6 Merge branch 'master' into dev 2011-06-07 15:15:06 +01:00
Ross Lawley
c059ad47f2 Updated django docs refs #186 2011-06-07 15:14:41 +01:00
Ross Lawley
48fd6c1344 Merge remote branch 'origin/master' into dev 2011-06-07 14:38:04 +01:00
Ross Lawley
1ee50922d9 Merge pull request #186 from kuno/master
fixed import path typo in django document
2011-06-07 06:37:34 -07:00
kuno
d63bf0abde fixed import path typo in django documents 2011-06-07 20:19:29 +08:00
Ross Lawley
711db45c02 Changelist updated 2011-06-06 14:36:44 +01:00
Ross Lawley
55e20bda12 Added slave_okay syntax to querysets.
* slave_okay (optional): if True, allows this query to be run against a replica secondary.
2011-06-06 14:35:46 +01:00
Ross Lawley
56f00a64d7 Added bulk insert method.
Updated changelog and added tests / query_counter tests
2011-06-06 12:37:06 +01:00