Fixes passed in Constructor data for complexfields

Fixes #355
This commit is contained in:
Ross Lawley
2011-11-28 08:09:17 -08:00
parent d00859ecfd
commit 083f00be84
2 changed files with 17 additions and 1 deletions

View File

@@ -157,9 +157,11 @@ class BaseField(object):
if isinstance(value, (list, tuple)) and not isinstance(value, BaseList):
observer = DataObserver(instance, self.name)
value = BaseList(value, observer)
instance._data[self.name] = value
elif isinstance(value, dict) and not isinstance(value, BaseDict):
observer = DataObserver(instance, self.name)
value = BaseDict(value, observer)
instance._data[self.name] = value
return value
def __set__(self, instance, value):
@@ -749,7 +751,6 @@ class BaseDocument(object):
self._data[name] = value
if hasattr(self, '_changed_fields'):
self._mark_as_changed(name)
super(BaseDocument, self).__setattr__(name, value)
def __expand_dynamic_values(self, name, value):