Как вставить шаблон в другой шаблон?



У меня есть очень простой шаблон (basic_template.html), и хотите заполнить данные, отформатированные с использованием другого частичного шаблона. Базовый шаблон.html может содержать несколько вещей, отформатированных с помощью частичного шаблона.



Как я должен структурировать код в views.py?



причина, по которой я это делаю, заключается в том, что позже он будет заполнен с помощью Ajax. Правильно ли я это делаю?

645   3  

3 ответов:

вы можете сделать:

<div class="basic">
{% include "main/includes/subtemplate.html" %}    
</div>

здесь subtemplate.html еще один шаблон Django. В этом subtemplate.html вы можете поместить HTML, который будет получен с помощью Ajax.

вы также можете включить шаблон несколько раз:

<div class="basic">
{% for item in items %}
    {% include "main/includes/subtemplate.html" %}    
{% endfor %}
</div>

вы можете сделать это с помощью блок. блоки-это тег шаблона Django, который будет переопределять разделы шаблона вы продлить. Я включил пример ниже.

basic_template.HTML-код

<body>
{% block 'body' %}
{% endblock %}
</body>

шаблон, который вы хотите включить: (т. е. пример.html)

{% extends 'basic_template.html' %} 
{% block 'body' %}
/* HTML goes here */
{% endblock %}

views.py:

return render_to_response(template='example.html', context, context_instance)

это нагрузка basic_template.HTML-код, но заменить все внутри {% block 'body' %} {% endblock %} в basic_template.html с тем, что содержится внутри {% block 'body' %} {% endblock %}.

вы можете прочитать больше о блоках и наследовании шаблонов в Django Docs

Я просто хотел добавить различия расширения и включения. Как шаблон, так и include могут использовать модели, вставленные в текущее приложение. Шаблон предназначен для глобального использования любым вашим приложением. Включить предназначен для использования в некоторых приложениях. Например: вы хотите вставить слайдер на главную страницу и страницу, но нигде. Вы можете создать слайдер приложение со своей собственной моделью для удобства и импортировать его модель и включить в этом страницы. Если вы использовали шаблон для этого примера, вы бы создали 2 шаблона один с ползунком а все остальное у другого шаблона есть.

Comments

    Ничего не найдено.