Skip to content

Commit 0b864ac

Browse files
committed
Merge pull request encode#1785 from gdoermann/master
Frameworks throws AssertionError saying you cannot set required=True and...
2 parents 4ce4a7c + f27a286 commit 0b864ac

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

rest_framework/serializers.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -845,7 +845,7 @@ def get_related_field(self, model_field, related_model, to_many):
845845
}
846846

847847
if model_field:
848-
kwargs['required'] = not(model_field.null or model_field.blank)
848+
kwargs['required'] = not(model_field.null or model_field.blank) and model_field.editable
849849
if model_field.help_text is not None:
850850
kwargs['help_text'] = model_field.help_text
851851
if model_field.verbose_name is not None:
@@ -868,7 +868,7 @@ def get_field(self, model_field):
868868
"""
869869
kwargs = {}
870870

871-
if model_field.null or model_field.blank:
871+
if model_field.null or model_field.blank and model_field.editable:
872872
kwargs['required'] = False
873873

874874
if isinstance(model_field, models.AutoField) or not model_field.editable:
@@ -1126,7 +1126,7 @@ def get_related_field(self, model_field, related_model, to_many):
11261126
}
11271127

11281128
if model_field:
1129-
kwargs['required'] = not(model_field.null or model_field.blank)
1129+
kwargs['required'] = not(model_field.null or model_field.blank) and model_field.editable
11301130
if model_field.help_text is not None:
11311131
kwargs['help_text'] = model_field.help_text
11321132
if model_field.verbose_name is not None:

0 commit comments

Comments
 (0)