У меня есть шаблон, к которому я хочу получить доступ из include
, а также чтобы он был доступен как отдельная страница с extends
.
Есть Base.html
:
<!-- some html, navbar -->
{% block content %}
{% endblock %}
<!-- footer and other stuff -->
Существует HomePage.html
:
{% extends 'Base.html' %}
{% block content %}
<!-- some HomePage content -->
{% endblock %}
Есть MyTemplate.html
:
{% extends 'Base.html' %}
{% block content %}
<!-- some content from MyTemplate -->
{% endblock %}
Я хочу добавить содержимое MyTemplate.html
на HomePage. Если я добавлю {% include 'MyTemplate.html' %}
к HomePage.html
, я получу две навигационные панели, потому что Base.html
увеличивается в два раза. Но мне все еще нужно, чтобы MyTemplate.html
был доступен как отдельная страница с навигационной панелью и другими Base.html
материалами.
Как игнорировать {% extends %}
, если шаблон включен из другого?
На данный момент в качестве обходного пути я добавил еще один файл, скажем MyPage.html
. Этот файл расширяет Base.html
и включает MyTemplate.html
. HomePage.html
также включает MyTemplate.html
, а MyTemplate.html
ничего не расширяет. Я просто хотел узнать, есть ли более подходящий способ сделать то, что я хочу.
UPD : я использую два представления. Один из них использует HomePage.html
, а другой использует MyTemplate.html
(MyPage.html
на данный момент).