Можно ли вызывать колонтитулы из базы? - PullRequest
0 голосов
/ 26 сентября 2019

В настоящее время моя дилемма заключается в том, что я хочу, чтобы div в моем base.html был в моем home_page.html, но он мне нужен вокруг моего верхнего и нижнего колонтитула.

Это мой base.html

<div class="cover-container d-flex h-100 p-3 mx-auto flex-column">
    {# header #}

    {# /header #}
    {% block content %}{% endblock %}
    {# footer #}

    {# footer #}
</div>

И это моя домашняя страница, которая расширяет базу.

{% extends "../base.html" %}
{% load static %}
{% load wagtailcore_tags wagtailimages_tags %}
{% block body_class %}Home{% endblock %}
{% block extra_css %}
    {# Override this in templates to add extra stylesheets #}

{% endblock %}
{% block extra_js %}
    {# Override this in templates to add extra javascript #}

{% endblock %}
{% block content %} {#    html stuff sits in here#}
        <main role="main" class="inner cover">

{% endblock %}

Есть ли способ вызвать верхний и нижний колонтитулы конкретно в homepage.html?

Ответы [ 2 ]

1 голос
/ 26 сентября 2019

Я хочу, чтобы этот div был только на главной странице, а не на всех страницах

Я предполагаю, что вы имеете в виду, что вы хотите, чтобы этот div имел этот конкретный наборклассов для домашней страницы, а не для других страниц (IOW, для других страниц нормально использовать div без классов или других классов).

Если это так, решение простое: оставьтеdiv, где он есть, но оберните классы div в его собственный блок (со значениями по умолчанию - в конечном итоге пустыми) и переопределите этот блок на домашней странице, то есть:

base.html:

<div class="{% block page-css-class %}{% endblock %}">
    {# header #}

    {# /header #}
    {% block content %}{% endblock %}
    {# footer #}

    {# footer #}
</div>

и home.html

{% extends "../base.html" %}

{% block page-css-class %}cover-container d-flex h-100 p-3 mx-auto flex-column{% endblock %}

{# your remaining code here #}
0 голосов
/ 26 сентября 2019
Тег

extends используется для наследования вашего родительского шаблона в дочерний шаблон.Затем он ищет теги block в родительском шаблоне и заменяет его значениями дочернего шаблона. Теги
include загружает шаблон и отображает его в текущем контексте.Возможно, вы захотите использовать {% include "footer.html" with my_context_variable=value %} для передачи дополнительного контекста. Подробнее об этом можно прочитать здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...