diff options
Diffstat (limited to 'rest_framework/serializers.py')
| -rw-r--r-- | rest_framework/serializers.py | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py index 6d7c5345..7daeac41 100644 --- a/rest_framework/serializers.py +++ b/rest_framework/serializers.py @@ -481,17 +481,15 @@ class ModelSerializer(Serializer): Creates a default instance of a basic non-relational field. """ kwargs = {} + has_default = model_field.has_default() - kwargs['blank'] = model_field.blank - - if model_field.null or model_field.blank: + if model_field.null or model_field.blank or has_default: kwargs['required'] = False if isinstance(model_field, models.AutoField) or not model_field.editable: kwargs['read_only'] = True - if model_field.has_default(): - kwargs['required'] = False + if has_default: kwargs['default'] = model_field.get_default() if issubclass(model_field.__class__, models.TextField): |
