Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python django从文件导入模板_Python_Html_Django - Fatal编程技术网

Python django从文件导入模板

Python django从文件导入模板,python,html,django,Python,Html,Django,我有3个页面,所有页面在每个html文件的顶部都有相同的菜单 菜单中有很多a标签,当我想修改标签中的所有链接时,我遇到了问题 我想在另一个名为menu.txt的文件中编写菜单,并使用模板加载menu.txt,然后将菜单与页面的其他部分合并 有什么有效的方法吗 除了在view.py中加载页面并将值传递给模板之外 谢谢。使用在模板文件中包含。看 例子 {%extends'base.html%} {%block content%} {%include'包含/menu.html%} 你好,世界 {%en

我有3个页面,所有页面在每个html文件的顶部都有相同的菜单

菜单中有很多a标签,当我想修改标签中的所有链接时,我遇到了问题

我想在另一个名为menu.txt的文件中编写菜单,并使用模板加载menu.txt,然后将菜单与页面的其他部分合并

有什么有效的方法吗

除了在view.py中加载页面并将值传递给模板之外


谢谢。

使用
在模板文件中包含
。看

例子
{%extends'base.html%}
{%block content%}
{%include'包含/menu.html%}
你好,世界
{%endblock内容%}

在模板文件中使用
包含
。看

例子
{%extends'base.html%}
{%block content%}
{%include'包含/menu.html%}
你好,世界
{%endblock内容%}

模板继承

Django的模板引擎中最强大、也是最复杂的部分是模板继承。模板继承允许您构建一个基本“骨架”模板,该模板包含站点的所有公共元素,并定义子模板可以覆盖的块

从以下示例开始,最容易理解模板继承:

<!DOCTYPE html>
<html lang="en">
<head>
    <link rel="stylesheet" href="style.css" />
    <title>{% block title %}My amazing site{% endblock %}</title>
</head>

<body>
    <div id="sidebar">
        {% block sidebar %}
        <ul>
            <li><a href="/">Home</a></li>
            <li><a href="/blog/">Blog</a></li>
        </ul>
        {% endblock %}
    </div>

    <div id="content">
        {% block content %}{% endblock %}
    </div>
</body>
</html>

{%block title%}我的精彩网站{%endblock%}
{%块边栏%}
{%endblock%} {%block content%}{%endblock%}
这个模板(我们称之为base.html)定义了一个简单的html框架文档,您可以将其用于一个简单的两列页面。“子”模板的任务是用内容填充空块

在此示例中,块标记定义了子模板可以填充的三个块。块标记所做的只是告诉模板引擎,子模板可以覆盖模板的这些部分

子模板可能如下所示:

{% extends "base.html" %}
{% block title %}My amazing blog{% endblock %}
{% block content %}
{% for entry in blog_entries %}
    <h2>{{ entry.title }}</h2>
    <p>{{ entry.body }}</p>
{% endfor %}
{% endblock %}
{%extends“base.html”%}
{%block title%}我的精彩博客{%endblock%}
{%block content%}
{blog_entries%}
{{entry.title}
{{entry.body}

{%endfor%} {%endblock%}
extends标记是这里的关键。它告诉模板引擎该模板“扩展”了另一个模板。当模板系统评估这个模板时,它首先定位父级——在本例中为“base.html”

您可以在每个html页面上参考扩展commom部分


模板继承

Django的模板引擎中最强大、也是最复杂的部分是模板继承。模板继承允许您构建一个基本“骨架”模板,该模板包含站点的所有公共元素,并定义子模板可以覆盖的块

从以下示例开始,最容易理解模板继承:

<!DOCTYPE html>
<html lang="en">
<head>
    <link rel="stylesheet" href="style.css" />
    <title>{% block title %}My amazing site{% endblock %}</title>
</head>

<body>
    <div id="sidebar">
        {% block sidebar %}
        <ul>
            <li><a href="/">Home</a></li>
            <li><a href="/blog/">Blog</a></li>
        </ul>
        {% endblock %}
    </div>

    <div id="content">
        {% block content %}{% endblock %}
    </div>
</body>
</html>

{%block title%}我的精彩网站{%endblock%}
{%块边栏%}
{%endblock%} {%block content%}{%endblock%}
这个模板(我们称之为base.html)定义了一个简单的html框架文档,您可以将其用于一个简单的两列页面。“子”模板的任务是用内容填充空块

在此示例中,块标记定义了子模板可以填充的三个块。块标记所做的只是告诉模板引擎,子模板可以覆盖模板的这些部分

子模板可能如下所示:

{% extends "base.html" %}
{% block title %}My amazing blog{% endblock %}
{% block content %}
{% for entry in blog_entries %}
    <h2>{{ entry.title }}</h2>
    <p>{{ entry.body }}</p>
{% endfor %}
{% endblock %}
{%extends“base.html”%}
{%block title%}我的精彩博客{%endblock%}
{%block content%}
{blog_entries%}
{{entry.title}
{{entry.body}

{%endfor%} {%endblock%}
extends标记是这里的关键。它告诉模板引擎该模板“扩展”了另一个模板。当模板系统评估这个模板时,它首先定位父级——在本例中为“base.html”

您可以在每个html页面上参考扩展commom部分


@Jimmy希望它能解决您的问题祝您愉快:)@Jimmy希望它能解决您的问题祝您愉快:)我应该在视图中呈现哪个文件?基础文件或节文件?应在视图中呈现哪个文件?基本文件还是分区文件?