Ross Lawley
e80144e9f2
Added multidb support
...
No change required to upgrade to multiple databases. Aliases are used
to describe the database and these can be manually registered or fall
through to a default alias using connect.
Made get_connection and get_db first class members of the connection class.
Old style _get_connection and _get_db still supported.
Refs: #84 #87 #93 #215
2011-11-22 08:01:14 -08:00
Adam Parrish
34646a414c
Fixes bug using positional operator to update embedded documents.
...
append_field wasn't getting reset to True in the loop, so fields wouldn't
get appended to clean_fields after str was encountered
[#354 ]
2011-11-11 01:10:00 -08:00
Ross Lawley
59bd72a888
Added tests for __repr__ fix
2011-11-01 02:15:31 -07:00
Ross Lawley
aa9ed614ad
Merge branch 'master' of https://github.com/mjtamlyn/mongoengine into transform_update
2011-11-01 01:19:30 -07:00
Ross Lawley
0624cdd6e4
Fixes collection creation post drop_collection
...
Thanks to Julien Rebetez for the original patch
closes [#285 ]
2011-10-11 02:26:33 -07:00
Marc Tamlyn
219d316b49
Fix iteration on querysets.
...
If iteration of a queryset was interrupted (by a break, or a caught
error), the next iterator would start from the second element as the
cursor had already moved to the first. This is fixed by adding a rewind
into the __iter__ method.
2011-10-05 13:26:57 +01:00
Wilson Júnior
a9cacd2e06
fixed embedded null item_frequencies
2011-09-20 08:56:30 -03:00
Ross Lawley
f549d8c0bc
Merge pull request #263 from johnarnfield/dev
...
Added polygon support and unit tests
2011-08-17 13:46:40 -07:00
John Arnfield
b037fb3e21
Added version check to the polygon test to ensure server version >= 1.9
2011-08-17 21:23:40 +01:00
John Arnfield
bd005575c4
Added geospatial polygon lookups & tests
2011-08-17 20:11:05 +01:00
John Arnfield
ca3b004921
Added tests for polygon queries
2011-08-17 20:04:38 +01:00
Ross Lawley
3f301f6b0f
Finishing touches to where implementation - thanks to dcrosta
...
Refs #242
2011-08-16 10:32:21 +01:00
Dan Crosta
13afead9fb
add where() method to QuerySet
2011-07-20 12:41:20 -04:00
Ross Lawley
0d1804461d
Updated handling setting of object managers and inheritance
2011-07-19 22:12:09 +01:00
Ross Lawley
a4c197a83c
Added update() convenience method to a document
...
Thanks to @dcrosta for the initial code
[closes #229 ]
2011-07-13 14:15:46 +01:00
Ross Lawley
e079924632
Added extra test for update / update_one
...
[closes #231 ]
2011-07-12 14:43:21 +01:00
Ross Lawley
1452d3fac5
Fixed item_frequency methods to handle null values
...
[fixes #216 ]
2011-07-11 16:50:31 +01:00
Ross Lawley
14be7ba2e2
Added support for the $ positional operator
...
closes #205
2011-06-21 14:50:11 +01:00
Ross Lawley
f41c5217c6
Added a cleaner way to get collection names
...
Also handles dynamic collection naming - refs #180 .
2011-06-20 11:48:12 +01:00
Ross Lawley
99f923e27f
Fixed queryset repr mid iteration
...
Closes #144
2011-06-17 15:04:07 +01:00
Ross Lawley
94cad89e32
Fixes to item_frequencies - now handles path lookups
...
fixes #194
2011-06-15 11:22:27 +01:00
Colin Howe
4174918476
Merge in upstream dev
2011-06-08 12:33:36 +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
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
Colin Howe
40df08c74c
Fix QuerySet.ensure_index for new index specs
2011-05-29 13:33:00 +01:00
Colin Howe
6f5bd7b0b9
Test needs a connection...
2011-05-26 18:54:52 +01:00
Ross Lawley
c903af032f
Added inline_map_reduce functionality
...
Also added map_reduce method for calculating item_frequencies
Closes #183
2011-05-26 15:44:43 +01:00
Ross Lawley
97a1310344
Tweakin test
2011-05-26 11:11:00 +01:00
Alistair Roche
bf6f03a412
Improved MapFields setting
2011-05-25 17:25:39 +01:00
Ross Lawley
5ab13518db
Added test confirming order_by reference field doesnt work
2011-05-25 13:50:52 +01:00
Ross Lawley
eb892241ee
Added regression test for editting embedded documents
...
Closes #35
2011-05-25 13:31:01 +01:00
Ross Lawley
fac3f038a8
Added regression test for issue with unset and pop
...
Closes #118
2011-05-25 12:20:56 +01:00
Ross Lawley
60c8254f58
Tweaks to item_frequencies
...
Updated to use a ternary statement and added tests
Refs #124 #122
Thanks to @nickvlku for the code.
2011-05-25 11:10:42 +01:00
Ross Lawley
2ce70448b0
Merge branch 'dev' into pull_124
2011-05-25 09:54:56 +01:00
Ross Lawley
3246cf8bdd
Merge pull request #177 from sbook/feature/update_lists
...
Added the ability to update individual items in ListFields.
Example:
Message.objects(pk=12).update(set__comments__5__body="Testing 123")
2011-05-24 06:13:10 -07:00
Ross Lawley
7ecf84395a
Improved DictFields
...
Allow searching multiple levels deep in DictFields
Allow DictField entries containing strings to use matching operators
Thanks again to @theojulien for the initial code #108
2011-05-24 14:07:58 +01:00
Alistair Roche
8427877bd2
Merge remote branch 'upstream/dev' into dev
2011-05-24 11:32:23 +01:00
Alistair Roche
118c0deb7a
Fixed list-indexing syntax; created tests.
2011-05-24 11:31:44 +01:00
Ross Lawley
1126c85903
Added Custom Objects Managers
...
Managers can now be directly declared in a Document eg::
```python
class CustomQuerySetManager(QuerySetManager):
@staticmethod
def get_queryset(doc_cls, queryset):
return queryset(is_published=True)
class Post(Document):
is_published = BooleanField(default=False)
published = CustomQuerySetManager()
```
Refactored the name of the `_manager_func` to `get_queryset` to mark it as
part the public API. If declaring a Manager with a get_queryset method, it
should be a staticmethod, that accepts the document_class and the queryset.
Note - you can still use decorators in fact in the example below,
we effectively do the same thing as the first example and is much less verbose.
```python
class Post(Document):
is_published = BooleanField(default=False)
@queryset_manager
def published(doc_cls, queryset):
return queryset(is_published=True)
```
Thanks to @theojulienne for the initial impetus and code sample #108
2011-05-24 11:26:46 +01:00
Ross Lawley
04953351f1
Merge branch 'feature/slicing_fields' into dev
2011-05-20 14:18:48 +01:00
Ross Lawley
5f53cda3ab
Added regression test for #94
2011-05-20 10:55:01 +01:00
Ross Lawley
08d1689268
Updated to handle the converntional api style for slicing a field
...
Added testcase to demonstrate embedded slicing as well.
Refs #167
2011-05-20 09:47:41 +01:00
Ross Lawley
b3251818cc
Added regression test for custom queryset ordering
...
Closes #126
2011-05-19 13:04:14 +01:00
Ross Lawley
371dbf009f
Updated QuerySet to allow more granular fields control.
...
Added a fields method and tests showing the retrival of subranges of
List Fields.
Refs #167
2011-05-18 16:39:19 +01:00
Ross Lawley
7ba40062d3
Fixes ordering with custom db field names
...
Closes #125
2011-05-18 12:18:33 +01:00
Ross Lawley
1a049ee49d
Added regression test case for mongoengine/issues/155
2011-05-18 11:06:14 +01:00
Ross Lawley
31521ccff5
Added queryset clone support and tests, thanks to hensom
...
Fixes #130
2011-05-18 10:30:07 +01:00
Ross Lawley
378b52321b
Merge commit '18baa2dd7a4e909169b694cb6ec36214c5a51506'
2011-05-18 09:17:05 +01:00