Fix: Use QueryDict.dict() instead of dict(QueryDict)

dict(QueryDict) wraps every value in a list: {'first_name': ['Вадимин']}
QueryDict.dict() returns single values: {'first_name': 'Вадимин'}

This caused LDAP fields to be saved as "['Вадимин']" instead of 'Вадимин'
because the list was stringified by ldapdb before writing to AD.
This commit is contained in:
lizerk 2026-03-20 01:01:07 +03:00
parent 11e0714411
commit 649bd62a2b

View File

@ -205,7 +205,9 @@ class EmployeeViewSet(viewsets.ModelViewSet):
old_email = instance.email
# Передаем данные для синхронизации с LDAP (через сигналы)
instance._ldap_changes = dict(self.request.data)
# request.data — это QueryDict, dict() конвертирует значения в списки.
# Используем .dict() чтобы получить одиночные значения.
instance._ldap_changes = self.request.data.dict()
if 'avatar' in self.request.FILES:
instance._ldap_avatar = self.request.FILES['avatar']