diff options
| author | Parth Paradkar <parthparadkar3@gmail.com> | 2026-01-12 19:16:22 +0530 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-01-12 08:46:22 -0500 |
| commit | eeea8d2cba41229b10226d8b9be184f0b015e95c (patch) | |
| tree | a724ad290db092a91978c046a132dbc73c13134a /django/contrib | |
| parent | d61838761f17d7c934c7be288fadfa14f471b598 (diff) | |
Fixed #36804 -- Fixed admin system check crash for missing models.
Diffstat (limited to 'django/contrib')
| -rw-r--r-- | django/contrib/admin/checks.py | 8 |
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__, |
