mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-08-04 20:40:14 +03:00
Merge ac6d75ece6
into 871ce34983
This commit is contained in:
commit
f6d4a40c18
|
@ -829,6 +829,8 @@ class UUIDField(Field):
|
|||
super(UUIDField, self).__init__(**kwargs)
|
||||
|
||||
def to_internal_value(self, data):
|
||||
if data == '' and self.default:
|
||||
data = self.get_default()
|
||||
if not isinstance(data, uuid.UUID):
|
||||
try:
|
||||
if isinstance(data, six.integer_types):
|
||||
|
|
|
@ -749,6 +749,14 @@ class TestUUIDField(FieldValues):
|
|||
self._test_format('urn', 'urn:uuid:00000000-0000-0000-0000-000000000000')
|
||||
self._test_format('hex', '0' * 32)
|
||||
|
||||
def test_default_uuid(self):
|
||||
"""
|
||||
If `default=uuid` then '' is a valid input.
|
||||
"""
|
||||
field = serializers.UUIDField(default=uuid.uuid4)
|
||||
output = field.run_validation('')
|
||||
assert isinstance(output, uuid.UUID)
|
||||
|
||||
|
||||
class TestIPAddressField(FieldValues):
|
||||
"""
|
||||
|
|
Loading…
Reference in New Issue
Block a user