mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-01-24 00:04:16 +03:00
Fix non-determanistic unique constraint mapping. Refs #2092.
This commit is contained in:
parent
8516281078
commit
40b1ea919b
|
@ -721,6 +721,7 @@ class ModelSerializer(Serializer):
|
||||||
# arguments to deal with `unique_for` dates that are required to
|
# arguments to deal with `unique_for` dates that are required to
|
||||||
# be in the input data in order to validate it.
|
# be in the input data in order to validate it.
|
||||||
hidden_fields = {}
|
hidden_fields = {}
|
||||||
|
unique_constraint_names = set()
|
||||||
|
|
||||||
for model_field_name, field_name in model_field_mapping.items():
|
for model_field_name, field_name in model_field_mapping.items():
|
||||||
try:
|
try:
|
||||||
|
@ -729,11 +730,12 @@ class ModelSerializer(Serializer):
|
||||||
continue
|
continue
|
||||||
|
|
||||||
# Include each of the `unique_for_*` field names.
|
# Include each of the `unique_for_*` field names.
|
||||||
unique_constraint_names = set([
|
unique_constraint_names |= set([
|
||||||
model_field.unique_for_date,
|
model_field.unique_for_date,
|
||||||
model_field.unique_for_month,
|
model_field.unique_for_month,
|
||||||
model_field.unique_for_year
|
model_field.unique_for_year
|
||||||
])
|
])
|
||||||
|
|
||||||
unique_constraint_names -= set([None])
|
unique_constraint_names -= set([None])
|
||||||
|
|
||||||
# Include each of the `unique_together` field names,
|
# Include each of the `unique_together` field names,
|
||||||
|
|
Loading…
Reference in New Issue
Block a user