Flask模板


title: flask学习笔记
subtitle: 2. flask模板
date: 2018-12-14 10:17:28
---

Flask模板继承

解决前端页面中相同模块同步、重复写的问题,Jinja2模板继承特性,将所有模板中相同的部分转移到一个基础模板中,然后再从它继承过来,避免诸多HTML模板上保留同样的代码和繁琐的工作。
定义一个名为base.html(app/templates/base.html)的基本模板,其中包含一个简单的导航栏,保证每一个页面的导航栏都能同步

<!DOCTYPE html>
<html lang="en">
<head>
    {% if title %}
    <meta charset="UTF-8">
    <title>{{ title }} - microblog - GXS</title>
    {% else %}
    <title>Welcome to microblog! </title>
    {% endif %}
</head>
{# 导航栏代码 #}
<body>
    <div>microblog - GXS:
        <a href="/index">Home</a>
        {# 写入需要引用公共模块的.html文件 #}
    </div>
    <hr>
    {% block content %}{% endblock %}
</body>
</html>

在这个模板中,使用block控制语句来定义派生模板可以插入代码的位置。 block被赋予一个唯一的名称,派生的模板可以在提供其内容时进行引用。
简化的index.html(app/templates/index.html)如下:

{% extends "base.html" %}

{% block content %}
    <h1>Hi, {{ user.username }}!</h1>
    {% for post in posts %}
    <div><p>{{ post.author.username }} says: <b>{{ post.body }}</b></p></div>
    {% endfor %}
{% endblock %}

转载于:https://www.cnblogs.com/gunxiaoshi/p/11052533.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值