From c3b841ae449c66102be7305416eca8acb22c8c42 Mon Sep 17 00:00:00 2001 From: Piotr Jakimiak Date: Fri, 5 Sep 2014 14:08:11 +0200 Subject: [PATCH] Use Serializer instead of ModelSerializer --- rest_framework/fields.py | 3 +-- tests/test_fields.py | 11 +++-------- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/rest_framework/fields.py b/rest_framework/fields.py index e744b1738..8e15345da 100644 --- a/rest_framework/fields.py +++ b/rest_framework/fields.py @@ -479,8 +479,7 @@ class CharField(WritableField): if not self.allow_none: return '' else: - # return None explicitly because smart_text(None) == 'None' - # see #1834 for details + # Return None explicitly because smart_text(None) == 'None'. See #1834 for details return None return smart_text(value) diff --git a/tests/test_fields.py b/tests/test_fields.py index 20d5a97a1..8bf9c56a4 100644 --- a/tests/test_fields.py +++ b/tests/test_fields.py @@ -54,10 +54,6 @@ class ChoiceFieldModel(models.Model): choice = models.CharField(choices=SAMPLE_CHOICES, blank=True, max_length=255) -class NullableCharFieldModel(models.Model): - char = models.CharField(null=True, blank=True, max_length=4) - - class ChoiceFieldModelSerializer(serializers.ModelSerializer): class Meta: model = ChoiceFieldModel @@ -1013,13 +1009,12 @@ class ModelCharField(TestCase): Tests for CharField """ def test_none_serializing(self): - class CharFieldSerializer(serializers.ModelSerializer): - class Meta: - model = NullableCharFieldModel + class CharFieldSerializer(serializers.Serializer): + char = serializers.CharField(allow_none=True, required=False) serializer = CharFieldSerializer(data={'char': None}) self.assertTrue(serializer.fields['char'].allow_none) self.assertTrue(serializer.is_valid()) - self.assertIsNone(serializer.object.char) + self.assertIsNone(serializer.object['char']) class SerializerMethodFieldTest(TestCase):