Flask框架模板继承实现方法分析

 更新时间:2019年07月31日 11:15:59   作者:Gavininn  
这篇文章主要介绍了Flask框架模板继承实现方法,结合实例形式分析了模板继承的应用场景及flask实现模板继承的相关操作技巧,需要的朋友可以参考下

本文实例讲述了Flask框架模板继承实现方法。分享给大家供大家参考,具体如下:

在模板中,可能会遇到以下情况:

  • 多个模板具有完全相同的顶部和底部内容
  • 多个模板中具有相同的模板代码内容,但是内容中部分值不一样
  • 多个模板中具有完全相同的 html 代码块内容

像遇到这种情况,可以使用 JinJa2 模板中的 继承 来进行实现

模板继承是为了重用模板中的公共内容。一般Web开发中,继承主要使用在网站的顶部菜单、底部。这些内容可以定义在父模板中,子模板直接继承,而不需要重复书写。

  • 标签定义的内容
{% block top %} {% endblock %}

  • 相当于在父模板中挖个坑,当子模板继承父模板时,可以进行填充。
  • 子模板使用 extends 指令声明这个模板继承自哪个模板
  • 父模板中定义的块在子模板中被重新定义,在子模板中调用父模板的内容可以使用super()

父模板代码:

base.html

{% block top %}
 顶部菜单
{% endblock top %}
{% block content %}
{% endblock content %}
{% block bottom %}
 底部
{% endblock bottom %}

子模板代码:

  • extends指令声明这个模板继承自哪
{% extends 'base.html' %}
{% block content %}
 需要填充的内容
{% endblock content %}

模板继承使用时注意点:

  • 不支持多继承
  • 为了便于阅读,在子模板中使用extends时,尽量写在模板的第一行。
  • 不能在一个模板文件中定义多个相同名字的block标签。
  • 当在页面中使用多个block标签时,建议给结束标签起个名字,当多个block嵌套时,阅读性更好。

希望本文所述对大家基于flask框架的Python程序设计有所帮助。

相关文章

  • 用Cython加速Python到“起飞”(推荐)

    用Cython加速Python到“起飞”(推荐)

    这篇文章主要介绍了用Cython加速Python到“起飞”,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • Python线程条件变量Condition原理解析

    Python线程条件变量Condition原理解析

    这篇文章主要介绍了Python线程条件变量Condition原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01
  • 详解numpy.meshgrid()方法使用

    详解numpy.meshgrid()方法使用

    这篇文章主要介绍了详解numpy.meshgrid()方法使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • Python字典遍历的陷阱

    Python字典遍历的陷阱

    这篇文章主要介绍了Python字典遍历的陷阱,我们都知道,Python中常常按照key、value的形式来遍历字典的items。若value是基本数据类型(int,float等),则是传的拷贝,是不能直接修改value的,下面来看看文章的详细内容吧
    2021-12-12
  • 基于python的matplotlib制作双Y轴图

    基于python的matplotlib制作双Y轴图

    这篇文章主要介绍了基于python的matplotlib制作双Y轴图,文中有非常详细的代码示例,对正在学习python的小伙伴们有很好地帮助,需要的朋友可以参考下
    2021-04-04
  • python将人民币转换大写的脚本代码

    python将人民币转换大写的脚本代码

    python将人民币转换大写的代码,有需要的朋友可以参考下
    2013-02-02
  • Python设计模式中单例模式的实现及在Tornado中的应用

    Python设计模式中单例模式的实现及在Tornado中的应用

    这篇文章主要介绍了Python设计模式中单例模式的实现及在Tornado中的应用,讲解了单例模式用于设计Tornado框架中的线程控制方面的相关问题,需要的朋友可以参考下
    2016-03-03
  • 实时获取Python的print输出流方法

    实时获取Python的print输出流方法

    今天小编就为大家分享一篇实时获取Python的print输出流方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • 使用Python的Flask框架来搭建第一个Web应用程序

    使用Python的Flask框架来搭建第一个Web应用程序

    Flask框架是一个以轻量级著称的Web开发框架,近两年来在Web领域获得了极高的人气,这里我们就来看如何使用Python的Flask框架来搭建第一个Web应用程序
    2016-06-06
  • 浅谈pycharm的xmx和xms设置方法

    浅谈pycharm的xmx和xms设置方法

    今天小编就为大家分享一篇浅谈pycharm的xmx和xms设置方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12

最新评论