1
0
mirror of https://github.com/django/django.git synced 2025-03-06 15:32:33 +00:00

Fixed #36093 -- Adjusted unique checks to account for inherited primary keys.

Regression in bf7b17d16d3978b2e1cee4a0f7ce8840bd1a8dc4 refs #36075.

Thanks Sage Abdullah for the report and tests.
This commit is contained in:
Simon Charette 2025-01-13 13:53:57 -05:00 committed by Sarah Boyce
parent e580926d74
commit 4bfec242b4
2 changed files with 6 additions and 1 deletions

View File

@ -1493,7 +1493,7 @@ class Model(AltersData, metaclass=ModelBase):
):
# no value, skip the lookup
continue
if f in self._meta.pk_fields and not self._state.adding:
if f in model_class._meta.pk_fields and not self._state.adding:
# no need to check for unique primary key when editing
continue
lookup_kwargs[str(field_name)] = lookup_value

View File

@ -343,6 +343,11 @@ class ModelInheritanceTests(TestCase):
self.assertEqual(type(MethodOverride.foo), DeferredAttribute)
def test_full_clean(self):
restaurant = Restaurant.objects.create()
with self.assertNumQueries(0), self.assertRaises(ValidationError):
restaurant.full_clean()
class ModelInheritanceDataTests(TestCase):
@classmethod