mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-07-28 17:09:59 +03:00
update operation in uniquetogether validator is fixed
This commit is contained in:
parent
aa500b3506
commit
e6ad1089e7
|
@ -134,7 +134,11 @@ class UniqueTogetherValidator:
|
||||||
if self.instance is not None:
|
if self.instance is not None:
|
||||||
for field_name in self.fields:
|
for field_name in self.fields:
|
||||||
if field_name not in attrs:
|
if field_name not in attrs:
|
||||||
attrs[field_name] = getattr(self.instance, field_name)
|
if field_name == self.serializer.fields[field_name].source:
|
||||||
|
attrs[field_name] = getattr(self.instance, field_name)
|
||||||
|
else:
|
||||||
|
attrs[self.serializer.fields[field_name].source] = getattr(self.instance, self.serializer.fields[field_name].source)
|
||||||
|
|
||||||
|
|
||||||
# Determine the filter keyword arguments and filter the queryset.
|
# Determine the filter keyword arguments and filter the queryset.
|
||||||
filter_kwargs = {
|
filter_kwargs = {
|
||||||
|
@ -142,8 +146,12 @@ class UniqueTogetherValidator:
|
||||||
field_name
|
field_name
|
||||||
if field_name == self.serializer.fields[field_name].source
|
if field_name == self.serializer.fields[field_name].source
|
||||||
else self.serializer.fields[field_name].source
|
else self.serializer.fields[field_name].source
|
||||||
): attrs[field_name]
|
): (
|
||||||
for field_name in self.fields
|
attrs[field_name]
|
||||||
|
if self.instance is None
|
||||||
|
else attrs[self.serializer.fields[field_name].source]
|
||||||
|
)
|
||||||
|
for field_name in self.fields
|
||||||
}
|
}
|
||||||
return qs_filter(queryset, **filter_kwargs)
|
return qs_filter(queryset, **filter_kwargs)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user