diff --git a/dj_cqrs/mixins.py b/dj_cqrs/mixins.py index e58e5c5..2fc564f 100644 --- a/dj_cqrs/mixins.py +++ b/dj_cqrs/mixins.py @@ -13,7 +13,7 @@ from django.conf import settings from django.db import router, transaction -from django.db.models import DateField, DateTimeField, F, IntegerField, Manager, Model +from django.db.models import DateField, DateTimeField, F, IntegerField, Manager, Model, UUIDField from django.db.models.expressions import CombinedExpression from django.utils.module_loading import import_string @@ -261,7 +261,7 @@ def _common_serialization(self, using): continue value = f.value_from_object(self) - if value is not None and isinstance(f, (DateField, DateTimeField)): + if value is not None and isinstance(f, (DateField, DateTimeField, UUIDField)): value = str(value) data[f.name] = value diff --git a/tests/test_master/test_mixin.py b/tests/test_master/test_mixin.py index a6d241e..82eea96 100644 --- a/tests/test_master/test_mixin.py +++ b/tests/test_master/test_mixin.py @@ -143,7 +143,7 @@ def test_to_cqrs_dict_basic_types(): 'datetime_field': str(dt), 'float_field': 1.23, 'url_field': 'http://example.com', - 'uuid_field': uid, + 'uuid_field': str(uid), }, m.to_cqrs_dict())