From 2d08eec093c461afc511a2832770bcd9cb66a296 Mon Sep 17 00:00:00 2001 From: Aparajita Fishman Date: Thu, 21 Jun 2012 18:57:14 -0700 Subject: [PATCH] Fix conversion of StringField value to unicode, replace outdated (str, unicode) check with unicode --- mongoengine/fields.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/mongoengine/fields.py b/mongoengine/fields.py index cefbbab9..1f865605 100644 --- a/mongoengine/fields.py +++ b/mongoengine/fields.py @@ -49,10 +49,13 @@ class StringField(BaseField): super(StringField, self).__init__(**kwargs) def to_python(self, value): - return unicode(value) + if isinstance(value, unicode): + return value + else: + return value.decode('utf-8') def validate(self, value): - if not isinstance(value, (str, unicode)): + if not isinstance(value, basestring): self.error('StringField only accepts string values') if self.max_length is not None and len(value) > self.max_length: