你如何在Django模板中嵌套?

时间:2016-07-05 22:09:11

标签: php python html django

我正在尝试将基于PHP的网站迁移到Python中,并将Django作为框架。

但是我对模板存在实际问题。我似乎无法理解他们在结构方面的工作方式。

通过这个我指的是#34;嵌套",使用不同的页面来构建模板,如在PHP中完成的那样。以下面的例子为例 -

index.php -

<html>  
<head>      
    <title>Home | Sequence Control Panel</title>
    <?php require_once "head.php"; ?>
</head>     
    <body>          
        <!-- Header -->             
            <?php require_once "nav.php"; ?>

        <p>Hello World</p>

        <!-- Footer -->
            <?php require_once "footer.php"; ?>
    </body>
</html>

footer.php -

<footer id="footer">
<ul class="icons">
    <li><a href="#" class="icon fa-twitter"><span class="label">Twitter</span></a></li>
    <li><a href="#" class="icon fa-facebook"><span class="label">Facebook</span></a></li>
    <li><a href="#" class="icon fa-instagram"><span class="label">Instagram</span></a></li>
    <li><a href="#" class="icon fa-dribbble"><span class="label">Dribbble</span></a></li>
    <li><a data-toggle="modal" data-target="#myModal" class="icon fa-envelope-o"><span class="label">Email</span></a></li>
</ul>
<ul class="copyright">
    <li>&copy; <?= date('Y'); ?> Sequence CP</li><li><a href="terms-and-conditions">Terms &amp; Conditions</a></li>
</ul>

基本上,我将页脚,头部和导航分成三个不同的页面并链接回来。

如何使用<?php require_once "footer.php"; ?>

将index.php和footer.php与多个页面的内容链接到一个页面

我知道我可以使用 -

{% block content %}

    <p>Hello World</p>

{% endblock content %}

但我只能在模板中执行一次。我似乎无法多次使用block content

如何嵌套多个页面的内容而不是一个?

PS:我是Django的新手

1 个答案:

答案 0 :(得分:1)

Django有一个include模板标记,允许您在当前模板中加载其他模板(如页眉和页脚),并使用context呈现它们:

{% include "header.html" %}

{% include "footer.html" %}