Flask学习笔记之模板(三)

作者 : 开心源码 本文共975个字,预计阅读时间需要3分钟 发布时间: 2022-05-12 共142人阅读

大纲

我们都知道html模板中,很多内容都是有重复的,譬如前面的head和后面的footer部分,这里的部分都是重复的,我们可以通过今天的学习的技术,减少代码的使用量,避免重复。

  • include
  • 模板继承

宏的使用方法很相似于函数的使用。首先我们新建一个html文件。

{% macro test(fruit)%}    <li>{{ fruit }}</li>{% endfor %}

这样我们在index.html中即可以这样来写:

{% import 'macros.html' as macros %}<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>罗罗攀</title></head><body>    <ul>        {% for fruit in fruits %}            {{ macros.test(fruit) }}        {% endfor %}    </ul></body></html>

include

大量重复代码,可以使用include方法,我们新建一个common.html文件,用于存放共有代码。

<div>    <a href="#">首页</a>    <a href="#">介绍页</a>    <a href="#">个人中心</a></div>

而后在index.html即可以使用:

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>罗罗攀</title></head><body>    {% include 'common.html' %}</body></html>

模板继承

在大型网站中,常用到模板继承。我们首先新建一个base.html文件。

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>罗罗攀</title></head><body>    <div>        <a href="#">首页</a>        <a href="#">介绍页</a>        <a href="#">个人中心</a>    </div>    {% block body %}{% endblock %}</body></html>

而后在index中,即可以少写很多代码了。

{% extends 'base.html' %}{% block body %}    <h1>hello</h1>{% endblock %}

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » Flask学习笔记之模板(三)

发表回复