summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabrizio Ettore Messina <zauddelig@gmail.com>2015-08-13 10:03:20 +0200
committerTim Graham <timograham@gmail.com>2015-08-13 13:14:17 -0400
commitc6523833790468e88b1967df23f2cdd65114c314 (patch)
tree258cd8ac9913fee6cdd93476c5dd55e9a91c445e
parentd5e3eb986d590e7e781e82e8199eb3ca6af62161 (diff)
[1.8.x] Fixed #25267 -- Corrected message for admin.E122 system check.
Backport of ece78684d9e09c477c4a0f10236c0aec45bac726 from master
-rw-r--r--django/contrib/admin/checks.py11
-rw-r--r--tests/admin_checks/tests.py16
2 files changed, 25 insertions, 2 deletions
diff --git a/django/contrib/admin/checks.py b/django/contrib/admin/checks.py
index 2caf82a7ef..0d770b079b 100644
--- a/django/contrib/admin/checks.py
+++ b/django/contrib/admin/checks.py
@@ -774,8 +774,15 @@ class ModelAdminChecks(BaseModelAdminChecks):
model=model, obj=cls, id='admin.E121')
else:
if field_name not in cls.list_display:
- return refer_to_missing_field(field=field_name, option=label,
- model=model, obj=cls, id='admin.E122')
+ return [
+ checks.Error(
+ "The value of '%s' refers to '%s', which is not "
+ "contained in 'list_display'." % (label, field_name),
+ hint=None,
+ obj=cls,
+ id='admin.E122',
+ )
+ ]
elif cls.list_display_links and field_name in cls.list_display_links:
return [
checks.Error(
diff --git a/tests/admin_checks/tests.py b/tests/admin_checks/tests.py
index e4e09d795b..ec1651be43 100644
--- a/tests/admin_checks/tests.py
+++ b/tests/admin_checks/tests.py
@@ -70,6 +70,22 @@ class SystemChecksTestCase(TestCase):
custom_site.unregister(Song)
admin.sites.system_check_errors = []
+ def test_field_name_not_in_list_display(self):
+ class SongAdmin(admin.ModelAdmin):
+ list_editable = ["original_release"]
+
+ errors = SongAdmin.check(model=Song)
+ expected = [
+ checks.Error(
+ "The value of 'list_editable[0]' refers to 'original_release', "
+ "which is not contained in 'list_display'.",
+ hint=None,
+ obj=SongAdmin,
+ id='admin.E122',
+ )
+ ]
+ self.assertEqual(errors, expected)
+
def test_readonly_and_editable(self):
class SongAdmin(admin.ModelAdmin):
readonly_fields = ["original_release"]