2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @@ -13,5 +13,5 @@ env/ | |||||||
| .settings | .settings | ||||||
| .project | .project | ||||||
| .pydevproject | .pydevproject | ||||||
| tests/bugfix.py | tests/test_bugfix.py | ||||||
| htmlcov/ | htmlcov/ | ||||||
| @@ -4,6 +4,7 @@ Changelog | |||||||
|  |  | ||||||
| Changes in 0.6.X | Changes in 0.6.X | ||||||
| ================ | ================ | ||||||
|  | - Fixed db_field data load error | ||||||
| - Fixed recursive save with FileField | - Fixed recursive save with FileField | ||||||
|  |  | ||||||
| Changes in 0.6.10 | Changes in 0.6.10 | ||||||
|   | |||||||
| @@ -798,6 +798,7 @@ class BaseDocument(object): | |||||||
|                     dynamic_data[key] = value |                     dynamic_data[key] = value | ||||||
|         else: |         else: | ||||||
|             for key, value in values.items(): |             for key, value in values.items(): | ||||||
|  |                 key = self._reverse_db_field_map.get(key, key) | ||||||
|                 setattr(self, key, value) |                 setattr(self, key, value) | ||||||
|  |  | ||||||
|         # Set any get_fieldname_display methods |         # Set any get_fieldname_display methods | ||||||
|   | |||||||
| @@ -1,47 +0,0 @@ | |||||||
| # import pickle |  | ||||||
| # import pymongo |  | ||||||
| # import bson |  | ||||||
| # import warnings |  | ||||||
|  |  | ||||||
| # from datetime import datetime |  | ||||||
|  |  | ||||||
| # import tempfile |  | ||||||
| # import pymongo, gridfs |  | ||||||
|  |  | ||||||
| import unittest |  | ||||||
| from mongoengine import * |  | ||||||
| from bson.objectid import ObjectId |  | ||||||
|  |  | ||||||
| class BugFixTest(unittest.TestCase): |  | ||||||
|  |  | ||||||
|  |  | ||||||
|     def setUp(self): |  | ||||||
|  |  | ||||||
|         conn = connect(db='mongoenginetest') |  | ||||||
|  |  | ||||||
|     def test_items_list(self): |  | ||||||
|  |  | ||||||
|         class ActivityType1(EmbeddedDocument): |  | ||||||
|             activity_id = IntField() |  | ||||||
|             activity_name = StringField() |  | ||||||
|  |  | ||||||
|         class ActivityType2(EmbeddedDocument): |  | ||||||
|             activity_id = IntField() |  | ||||||
|             activity_status = StringField() |  | ||||||
|  |  | ||||||
|         class UserActivities(Document): |  | ||||||
|             user_id = IntField() |  | ||||||
|             activity = GenericEmbeddedDocumentField(choices=(ActivityType1, ActivityType2)) |  | ||||||
|  |  | ||||||
|  |  | ||||||
|         UserActivities.drop_collection() |  | ||||||
|  |  | ||||||
|         user_id = 123 |  | ||||||
|         activity_id = 321 |  | ||||||
|         UserActivities(user_id=user_id, activity=ActivityType2(activity_id=activity_id, activity_status="A")).save() |  | ||||||
|  |  | ||||||
|         self.assertEquals(1, UserActivities.objects(user_id=user_id, __raw__={'activity.activity_status': 'A'}).count()) |  | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
| @@ -664,6 +664,26 @@ class DocumentTest(unittest.TestCase): | |||||||
|  |  | ||||||
|         BlogPost.drop_collection() |         BlogPost.drop_collection() | ||||||
|  |  | ||||||
|  |     def test_db_field_load(self): | ||||||
|  |         """Ensure we load data correctly | ||||||
|  |         """ | ||||||
|  |         class Person(Document): | ||||||
|  |             name = StringField(required=True) | ||||||
|  |             _rank = StringField(required=False, db_field="rank") | ||||||
|  |  | ||||||
|  |             @property | ||||||
|  |             def rank(self): | ||||||
|  |                 return self._rank or "Private" | ||||||
|  |  | ||||||
|  |         Person.drop_collection() | ||||||
|  |  | ||||||
|  |         Person(name="Jack", _rank="Corporal").save() | ||||||
|  |  | ||||||
|  |         Person(name="Fred").save() | ||||||
|  |  | ||||||
|  |         self.assertEquals(Person.objects.get(name="Jack").rank, "Corporal") | ||||||
|  |         self.assertEquals(Person.objects.get(name="Fred").rank, "Private") | ||||||
|  |  | ||||||
|     def test_explicit_geo2d_index(self): |     def test_explicit_geo2d_index(self): | ||||||
|         """Ensure that geo2d indexes work when created via meta[indexes] |         """Ensure that geo2d indexes work when created via meta[indexes] | ||||||
|         """ |         """ | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user