Commit 8113d661 by Tom Christie

Use new style of `required=<bool>` not `blank` or `null`

parent 5813a095
...@@ -481,17 +481,15 @@ class ModelSerializer(Serializer): ...@@ -481,17 +481,15 @@ class ModelSerializer(Serializer):
Creates a default instance of a basic non-relational field. Creates a default instance of a basic non-relational field.
""" """
kwargs = {} kwargs = {}
has_default = model_field.has_default()
kwargs['blank'] = model_field.blank if model_field.null or model_field.blank or has_default:
if model_field.null or model_field.blank:
kwargs['required'] = False kwargs['required'] = False
if isinstance(model_field, models.AutoField) or not model_field.editable: if isinstance(model_field, models.AutoField) or not model_field.editable:
kwargs['read_only'] = True kwargs['read_only'] = True
if model_field.has_default(): if has_default:
kwargs['required'] = False
kwargs['default'] = model_field.get_default() kwargs['default'] = model_field.get_default()
if issubclass(model_field.__class__, models.TextField): if issubclass(model_field.__class__, models.TextField):
......
...@@ -18,7 +18,7 @@ class ForeignKeySourceSerializer(serializers.ModelSerializer): ...@@ -18,7 +18,7 @@ class ForeignKeySourceSerializer(serializers.ModelSerializer):
class NullableForeignKeySourceSerializer(serializers.ModelSerializer): class NullableForeignKeySourceSerializer(serializers.ModelSerializer):
target = serializers.SlugRelatedField(slug_field='name', null=True) target = serializers.SlugRelatedField(slug_field='name', required=False)
class Meta: class Meta:
model = NullableForeignKeySource model = NullableForeignKeySource
......
...@@ -802,7 +802,7 @@ class BlankFieldTests(TestCase): ...@@ -802,7 +802,7 @@ class BlankFieldTests(TestCase):
model = BlankFieldModel model = BlankFieldModel
class BlankFieldSerializer(serializers.Serializer): class BlankFieldSerializer(serializers.Serializer):
title = serializers.CharField(blank=True) title = serializers.CharField(required=False)
class NotBlankFieldModelSerializer(serializers.ModelSerializer): class NotBlankFieldModelSerializer(serializers.ModelSerializer):
class Meta: class Meta:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment