Fix raising on nullable fields part of UniqueConstraint
by browniebroke · Pull Request #9531 · encode/django-rest-framework (original) (raw)
Here is a (minimal???) reproducer:
def test_tba(): class TestModel(models.Model): field_1 = models.IntegerField(null=True) field_2 = models.IntegerField(null=True)
class Meta:
unique_together = (("field_1", "field_2"),)
class TestSerializer(serializers.ModelSerializer):
field_1 = serializers.SerializerMethodField()
def get_field_1(self) -> str:
return "TEST"
class Meta:
model = TestModel
fields = ["field_1", "field_2"]
fields = TestSerializer().fields
assert isinstance(fields["field_1"], serializers.SerializerMethodField)
assert isinstance(fields["field_1"], serializers.SerializerMethodField)
E AssertionError: assert False
E + where False = isinstance(HiddenField(default=None), <class 'rest_framework.fields.SerializerMethodField'>)
E + where <class 'rest_framework.fields.SerializerMethodField'> = serializers.SerializerMethodField