2014-01-27 5 views
0

Я просто знаком с наследованием шаблона Django, но в этом случае это не поможет. I имеет следующую структуру шаблона:Django - разделите html-файл в компонентах

-templates 
    -home 
     -base.html 
     -right_menu.html 
     -top_menu.html 
     -left_bottom_menu.html 

base.html:

<!DOCTYPE html>  
{% load static %}  
<html> 
    <head> 
     <title>Hot or Not</title>    
    </head>  
    <body> 
     <div id="mainMenuPanel" class="topMenu"> 
      {% block top_menu %}{% endblock %} 
     </div> 
     <div class="leftPanel"> 
      <div class="leftBottomMenu"> 
       {% block left_bottom_menu %}{% endblock %} 
      </div> 
     </div>   
     <div id="divMenu" class="rightPanel"> 
      {% block right_menu %}{% endblock %}    
     </div> 
    </body> 
</html> 

И у меня есть 3 меню - меню сверху, слева снизу меню, справа меню. Но с загрузкой base.html я хочу загрузить эти меню. Подобно наследованию шаблонов, я хочу сохранить эти меню в других файлах. Однако наследование шаблона требует перенаправления на эти html-файлы (например, для перенаправления на right_menu.html), и будет загружен только их блок (он похож на главную страницу для других html-файлов). Как я могу сделать это разделение в Django?

+0

Что случилось с использованием тегов включения? –

ответ

3

Если положить что-то в

{% block right_menu %}{% end block %}

как говорят

{% block right_menu %}{% include 'right_menu.html' %}{% endblock %}

он будет загружен по умолчанию, если вы не измените его в шаблоне к югу.

+1

Только что узнал о тегах включения после того, как я разместил вопросы. Спасибо вам :) –