From dcebc5da4831d2982b26d00a9480ad538b5c5acf Mon Sep 17 00:00:00 2001 From: siddhartha-star-dev Date: Fri, 18 Feb 2022 23:04:05 +0530 Subject: Refs #2259 -- Disallowed primary keys in ModelAdmin.list_editable. Refs #32728. --- tests/admin_checks/tests.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'tests') diff --git a/tests/admin_checks/tests.py b/tests/admin_checks/tests.py index aa87649dce..4d171ed737 100644 --- a/tests/admin_checks/tests.py +++ b/tests/admin_checks/tests.py @@ -363,6 +363,23 @@ class SystemChecksTestCase(SimpleTestCase): ] self.assertEqual(errors, expected) + def test_pk_not_editable(self): + # PKs cannot be edited in the list. + class SongAdmin(admin.ModelAdmin): + list_display = ["title", "id"] + list_editable = ["id"] + + errors = SongAdmin(Song, AdminSite()).check() + expected = [ + checks.Error( + "The value of 'list_editable[0]' refers to 'id', which is not editable " + "through the admin.", + obj=SongAdmin, + id="admin.E125", + ) + ] + self.assertEqual(errors, expected) + def test_editable(self): class SongAdmin(admin.ModelAdmin): list_display = ["pk", "title"] -- cgit v1.3