From 681f7ae9c201ca9e7bd62b646e15ce55088a0da9 Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Wed, 18 May 2022 17:32:37 +0200 Subject: [PATCH] apps: deep copy uuid field (#65408) --- src/authentic2_cut/apps.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/authentic2_cut/apps.py b/src/authentic2_cut/apps.py index 20b3ee5..82d55d3 100644 --- a/src/authentic2_cut/apps.py +++ b/src/authentic2_cut/apps.py @@ -292,7 +292,9 @@ class AppConfig(django.apps.AppConfig): if view.__class__.__name__ == 'UsersAPI': del serializer.fields['id'] - serializer.fields['sub'] = serializer.fields['uuid'] + # use deepcopy to prevent overwrite of field.field_name + # see: https://github.com/encode/django-rest-framework/blob/bce9df9b5e0f54a6076519835393fea59accb40c/rest_framework/utils/serializer_helpers.py#L169 + serializer.fields['sub'] = copy.deepcopy(serializer.fields['uuid']) del serializer.fields['is_superuser'] del serializer.fields['is_staff'] del serializer.fields['password']