aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework
diff options
context:
space:
mode:
Diffstat (limited to 'rest_framework')
-rw-r--r--rest_framework/fields.py7
-rw-r--r--rest_framework/serializers.py1
2 files changed, 8 insertions, 0 deletions
diff --git a/rest_framework/fields.py b/rest_framework/fields.py
index bb9a523d..5d13bd55 100644
--- a/rest_framework/fields.py
+++ b/rest_framework/fields.py
@@ -409,6 +409,13 @@ class BooleanField(WritableField):
return False
raise ValidationError(self.error_messages['invalid'] % value)
+class TextField(WritableField):
+ type_name = 'TextField'
+
+ def from_native(self, value):
+ if isinstance(value, basestring) or value is None:
+ return value
+ return smart_unicode(value)
class CharField(WritableField):
type_name = 'CharField'
diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py
index 06330017..0f19956e 100644
--- a/rest_framework/serializers.py
+++ b/rest_framework/serializers.py
@@ -381,6 +381,7 @@ class ModelSerializer(Serializer):
models.DateField: DateField,
models.EmailField: EmailField,
models.CharField: CharField,
+ models.TextField: TextField,
models.CommaSeparatedIntegerField: CharField,
models.BooleanField: BooleanField,
}