From f80669d2f5a5f1db9e9b73ca893fefba34f955e7 Mon Sep 17 00:00:00 2001 From: Sarah Boyce <42296566+sarahboyce@users.noreply.github.com> Date: Wed, 6 Dec 2023 19:03:41 +0100 Subject: Fixed #35020 -- Fixed ModelAdmin.lookup_allowed() for non-autofield primary keys. Thanks Joshua Goodwin for the report. Regression in 45ecd9acca9b36093e274f47b6877a5f79108d9e. --- tests/modeladmin/tests.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'tests/modeladmin') diff --git a/tests/modeladmin/tests.py b/tests/modeladmin/tests.py index ec46b04c2e..e0c4d6e727 100644 --- a/tests/modeladmin/tests.py +++ b/tests/modeladmin/tests.py @@ -162,6 +162,20 @@ class ModelAdminTests(TestCase): True, ) + @isolate_apps("modeladmin") + def test_lookup_allowed_non_autofield_primary_key(self): + class Country(models.Model): + id = models.CharField(max_length=2, primary_key=True) + + class Place(models.Model): + country = models.ForeignKey(Country, models.CASCADE) + + class PlaceAdmin(ModelAdmin): + list_filter = ["country"] + + ma = PlaceAdmin(Place, self.site) + self.assertIs(ma.lookup_allowed("country__id__exact", "DE", request), True) + @isolate_apps("modeladmin") def test_lookup_allowed_foreign_primary(self): class Country(models.Model): -- cgit v1.3