Improved MapFields setting

This commit is contained in:
Alistair Roche
2011-05-25 17:25:39 +01:00
parent 5ab13518db
commit bf6f03a412
2 changed files with 43 additions and 1 deletions

View File

@@ -537,7 +537,11 @@ class MapField(BaseField):
return dict( [(key,self.field.to_mongo(item)) for key,item in value.iteritems()] )
def prepare_query_value(self, op, value):
return self.field.prepare_query_value(op, value)
if op not in ('set', 'unset'):
return self.field.prepare_query_value(op, value)
for key in value:
value[key] = self.field.prepare_query_value(op, value[key])
return value
def lookup_member(self, member_name):
return self.field.lookup_member(member_name)