Django устанавливает значение по умолчанию с помощью include - PullRequest
0 голосов
/ 16 мая 2018

У меня есть базовый HTML:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>default value</title>
        <meta content='width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no' name='viewport'>
    </head>

<body >

    {% block content %}{% endblock %}

</body>
</html>

И у меня есть мой шаблон:

{% extends "base.html" %}

{% block content %}

Я хочу иметь возможность переписать содержимое <head> тег. И используйте тег заголовка по умолчанию, если содержимое заголовка отсутствует. Как мне это сделать? Например, на некоторых страницах я хочу использовать дополнительные метатеги и другое название. Но мне нужны заголовок и метатеги по умолчанию, если не указан <head> тег

1 Ответ

0 голосов
/ 16 мая 2018

Имея некоторые части base template внутри {% block %}{% endblock %}, у вас фактически есть некоторое содержимое по умолчанию.

<head>
    <meta charset="UTF-8">
    <title>{% block title %}default value{% endblock title %}</title>
    {% block meta %} <!-- default meta -->
    <meta content='width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no' name='viewport'>
    {% endblock %}
</head>

Когда вы расширяете base.html, вам просто нужно вызвать эти блоки ..

Если вы хотите перезаписать один из этих тегов, просто вызовите тег:

{% block title %}I destroy the default title {% endblock %}
{% block meta %}I destroy the default tag {% endblock %}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...