#36331 closed Bug (fixed)
Object tools moved out of content block breaks custom admin templates
| Reported by: | Fabian Braun | Owned by: | Antoliny |
|---|---|---|---|
| Component: | contrib.admin | Version: | 5.2 |
| Severity: | Release blocker | Keywords: | |
| Cc: | Antoliny | Triage Stage: | Ready for checkin |
| Has patch: | yes | Needs documentation: | no |
| Needs tests: | no | Patch needs improvement: | no |
| Easy pickings: | no | UI/UX: | no |
Description (last modified by )
In Django 5.2 the admin's object-tools block has been moved outside of the content block in django/contrib/admin/templates/admin/base.html as part of https://github.com/django/django/pull/19032 fixing a layout issue.
Before Django 5.2:
...
{% block content_title %}{% if title %}<h1>{{ title }}</h1>{% endif %}{% endblock %}
{% block content_subtitle %}{% if subtitle %}<h2>{{ subtitle }}</h2>{% endif %}{% endblock %}
{% block content %}
{% block object-tools %}{% endblock %}
{{ content }}
{% endblock %}
...
Since Django 5.2:
...
{% block content_title %}{% if title %}<h1>{{ title }}</h1>{% endif %}{% endblock %}
{% block object-tools %}{% endblock %}
{% block content_subtitle %}{% if subtitle %}<h2>{{ subtitle }}</h2>{% endif %}{% endblock %}
{% block content %}
{{ content }}
{% endblock %}
...
This is a breaking change in commit abe925ff0bec2db8cd6247397327889d5f1a7f7c:
- Templates that overwrite the
contentblock and contain anobject-toolsblock will have the object tools rendered twice (for example: django-filer) - Templates that overwrite the
contentblock and do not contain anobject-toolsblock will have the default object-tools block rendered instead of none. This can lead to exceptions and server errors 500.
The change is not documented, nor am I aware that it is intended.
Change History (9)
comment:1 by , 7 months ago
| Description: | modified (diff) |
|---|
comment:2 by , 7 months ago
| Summary: | Object tools moved out of content block → Object tools moved out of content block breaks custom admin templates |
|---|
comment:3 by , 7 months ago
| Cc: | added |
|---|
follow-up: 5 comment:4 by , 7 months ago
| Severity: | Normal → Release blocker |
|---|---|
| Triage Stage: | Unreviewed → Accepted |
comment:5 by , 7 months ago
| Owner: | set to |
|---|---|
| Status: | new → assigned |
Replying to Sarah Boyce:
Thank you for the report!
I agree this is not intended, at the very least we would need a note in the breaking changes of 5.2.
Regression in b1324a680add78de24c763911d0eefa19b9263bc (refs #36055).
One option is to revert b1324a680add78de24c763911d0eefa19b9263bc and 02a5cbfe76382da2a0414df17017185be5bd47f9 which I'm open to (then re-open #36055).
Antoliny can you take a look?
Sure sarahboyce! I'll take a look. and thank you Fabian Braun :)
comment:7 by , 7 months ago
| Triage Stage: | Accepted → Ready for checkin |
|---|
Thank you for the report!
I agree this is not intended, at the very least we would need a note in the breaking changes of 5.2.
Regression in b1324a680add78de24c763911d0eefa19b9263bc (refs #36055).
One option is to revert b1324a680add78de24c763911d0eefa19b9263bc and 02a5cbfe76382da2a0414df17017185be5bd47f9 which I'm open to (then re-open #36055).
Antoliny can you take a look?