Fix edge case where _dynamic_keys stored as None (#387, #401)

This commit is contained in:
Ross Lawley 2013-07-11 07:15:34 +00:00
parent f48a0b7b7d
commit 6c599ef506

View File

@ -160,7 +160,8 @@ class BaseDocument(object):
'_fields_ordered', '_dynamic_fields'):
if k in data:
setattr(self, k, data[k])
for k in data.get('_dynamic_fields', SON()).keys():
dynamic_fields = data.get('_dynamic_fields') or SON()
for k in dynamic_fields.keys():
setattr(self, k, data["_data"].get(k))
def __iter__(self):