Подтвердить что ты не робот

Шаблон базы проектов Django

Можно ли создать базовый шаблон для моего проекта, из которого могут извлечь все приложения? Или мне нужно создать базовый шаблон для каждого приложения? И если бы я хотел, чтобы они были такими же, я просто скопировал их?

4b9b3361

Ответ 1

Конечно. Быстрый пример base.html

<!DOCTYPE html>
<html>
    <head>
        <title>My Project</title>
    </head>

    <body>
    {% block content %}{% endblock content %}
    </body>
</html>

И скажите, что у вас есть приложение под названием myapp с страницей view.html,

{% extends "base.html" %}

{% block content %}
    <h2>Content for My App</h2>
    <p>Stuff etc etc.</p>
{% endblock content %}

Потратьте некоторое время на прочитать документы для получения дополнительной информации

Ответ 2

Да, вы можете это сделать абсолютно. Используя теги шаблона extends и include в ваших шаблонах Django.

Я начинаю изучать Django и недавно понял это. Мой код находится в Github, если вы заинтересованы в том, как я структурирую шаблоны Django для наследования с base.html, а затем include обычные вещи, такие как navbar и header, footer и т.д.

Ответ 3

В последнем ответе есть какая-то проблема, и вот правильный; вы должны иметь Base.html следующим образом:

{% load staticfiles %}

<!DOCTYPE html>
<html>
<head>
    <title>My Project</title>
</head>
<body>
{% block content %}{% endblock %}
</body>
</html>

а также для index.html

{% extend "appname/base.html" %}
{% block content %}
     <h1>test</h1>
{% endblock %}