summaryrefslogtreecommitdiff
path: root/django/contrib/admin/checks.py
diff options
context:
space:
mode:
authorParth Paradkar <parthparadkar3@gmail.com>2026-01-12 19:16:22 +0530
committerGitHub <noreply@github.com>2026-01-12 08:46:22 -0500
commiteeea8d2cba41229b10226d8b9be184f0b015e95c (patch)
treea724ad290db092a91978c046a132dbc73c13134a /django/contrib/admin/checks.py
parentd61838761f17d7c934c7be288fadfa14f471b598 (diff)
Fixed #36804 -- Fixed admin system check crash for missing models.
Diffstat (limited to 'django/contrib/admin/checks.py')
-rw-r--r--django/contrib/admin/checks.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/django/contrib/admin/checks.py b/django/contrib/admin/checks.py
index 10257a54bf..d14515e8a4 100644
--- a/django/contrib/admin/checks.py
+++ b/django/contrib/admin/checks.py
@@ -236,14 +236,20 @@ class BaseModelAdminChecks:
id="admin.E038",
)
try:
+ if isinstance(field.remote_field.model, str):
+ raise NotRegistered
related_admin = obj.admin_site.get_model_admin(field.remote_field.model)
except NotRegistered:
+ # field.remote_field.model could be a string or a class.
+ remote_model = getattr(
+ field.remote_field.model, "__name__", field.remote_field.model
+ )
return [
checks.Error(
'An admin for model "%s" has to be registered '
"to be referenced by %s.autocomplete_fields."
% (
- field.remote_field.model.__name__,
+ remote_model,
type(obj).__name__,
),
obj=obj.__class__,