Как обернуть HTML вокруг блока в django?
Похоже на этот вопрос, на который не было ответа, который работает для меня. Я пытаюсь настроить шаблоны allauth:
- email.html расширяет base_manage_email.html
- base_manage_email.html extends base_manage.html
- base_manage.html расширяет manage.html, который я переопределил, чтобы расширить базовый макет.
Я хочу обернуть содержимое следующим образом в base_manage.html
:
{% extends "allauth/layouts/manage.html" %}
{% block content %}
<div class="format">
{{ block.super }}
</div>
{% endblock %}
Однако это не работает, потому что мне нужно что-то вроде {{ block.child }}
, чтобы обернуть содержимое дочерних элементов (email.html
). На самом деле содержимое email.html
выводится напрямую, как в моих base.html
.
Как я могу просто добавить форматирование по умолчанию во все шаблоны allauth, которые расширяют base_manage.html
?
В итоге я остановился на этом варианте базового макета, но хотел бы увидеть любые лучшие решения:
<div class="space-y-4
{% if request.resolver_match.url_name == 'account_email' or
request.resolver_match.url_name == 'account_change_password' or
request.resolver_match.url_name == 'account_logout' %}format{% endif %}">
{% block content %}{% endblock %}
</div>