【问题标题】:Why isn't the head section of jinja inheritance loading for me?为什么我没有加载 jinja 继承的 head 部分?
【发布时间】:2017-02-21 00:45:26
【问题描述】:

我正在尝试对以下两个页面进行模板继承,并且所有内容都被继承,但我的页面标题。我已经尝试了几种将标题放置在不同位置的变体,但仍然没有。顺便说一句,我正在我的本地主机上工作。

这是我的代码:

base.html

<!DOCTYPE html>
<html lang="en">
<head>
    {% block head %}
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width,initial-scale=1">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <title>{% block title %}{% endblock %} - My Webpage</title>
        <link href="https://maxcdn.bootstrapcdn.com/bootswatch/3.3.7/cerulean/bootstrap.min.css" rel="stylesheet" integrity="sha384-zF4BRsG/fLiTGfR9QL82DrilZxrwgY/+du4p/c7J72zZj+FLYq4zY00RylP9ZjiT" crossorigin="anonymous">
    {% endblock %}
</head>
<body>
    <div class="container">
        {% block content %} {% endblock %}
    </div>
</body>
</html>

login.html

{% extends "base.html" %}
{% block head %}{% endblock %}
{% block title %} Log In {% endblock %}
{% block content %}
    <h2>Log In</h2>
    <a href="/signup">Sign Up</a>
    <form method="post">
        <label for="username">Username:</label>
        <input id="username" type="text" name="username" value="{{username}}">
        {{username_error}}
        {{user_not_found}}
        <br>
        <label for="pass">Password:</label>
        <input id="pass" type="password" name="password" value="">
        {{incorrect_password}}
        {{password_error}}
        <br>
        <button>Submit</button>
    </form>
{% endblock %}

【问题讨论】:

    标签: python templates jinja2 template-inheritance


    【解决方案1】:

    原来我只需要取出头部块来加载头部和标题部分。我之前没有这样做的原因是因为我有另一个模板必须使用标题中的某些特定 css。

    {% extends "base.html" %}
    {% block title %} Log In {% endblock %}
    {% block content %}
        <h2>Log In</h2>
        <a href="/signup">Sign Up</a>
        <form method="post">
            <label for="username">Username:</label>
            <input id="username" type="text" name="username" value="{{username}}">
            {{username_error}}
            {{user_not_found}}
            <br>
            <label for="pass">Password:</label>
            <input id="pass" type="password" name="password" value="">
            {{incorrect_password}}
            {{password_error}}
            <br>
            <button>Submit</button>
        </form>
    {% endblock %}
    

    【讨论】:

      【解决方案2】:

      @Mr.Bill 或者直接使用 {% block head %}{% endblock %}

      {% block head %}{{ super() }}{% endblock %}
      

      不客气:)

      【讨论】:

        猜你喜欢
        • 2016-06-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-02-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多