栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

【Flask专题】12.模板-循环loop和宏(PyCharm)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【Flask专题】12.模板-循环loop和宏(PyCharm)

模板-循环loop和宏(PyCharm)

模板-循环loop和宏(PyCharm)
  • 模板-循环loop和宏(PyCharm)
  • loop.index、loop.index、loop.lenth例举

模板中:
声明变量:
{{ set a=10 }}
使用变量:
{{ a }}
类型:
过滤器:字符串、数字、列表、字典…
流程控制:
{% if %}…{% endif %}
{% for n in data %}…{% endfor %}
函数:
{% macro 宏名(参数) %}
使用各种模板语法:for、if… + html标签
{% endmacro %}
继承:
父模板:base.html
在父模板中预设block
子模板:{% extends ‘base.html’ %}
填充block

loop.index、loop.index、loop.lenth例举

loop.index:当前循环迭代的次数(从1开始)
loop.index0:当前循环迭代的次数(从0开始)
loop.revindex:到循环结束需要迭代的次数(从1开始)
loop.revindexo:到循环结束需要迭代的次数(从0开始)
loop.last:如果是最后一次迭代,为True
loop.first:如果是第一次迭代,为True
loop.lenth:序列中的项目数

goods = ['可乐', '雪碧', '芬达', '北冰洋', '椰奶']


@app.route('/goods')
def show_goods():
    return render_template('goods.html', goods=goods)



    
    循环loop的使用



  {% for good in goods %}
    {% if loop.last %}
      
    {% else %}
      

    {% endif %}
  {% endfor %}
序号 名称
{{loop.index}} {{good}}
商品种类:{{loop.length}}
{{loop.index}} {{good}}

类似于函数,只不过在模板中定义宏就是定义函数,调用宏
步骤:

  1. 定义:macro.html
    {% macro 宏名(参数) %}
    使用各种模板语法:for、if… + html标签
    {% endmacro %}

  2. 使用宏:
    导入宏文件:
    {% import ‘macro.html’ as ma %}

调用:
{{ ma.宏名(参数) }}

@app.route('/macro')
def show_macro():
    return render_template('index4.html', goods=goods)

macro.html

{% macro input(name, id, type='text') %}
  
{% endmacro %}

{% macro show_data(datas,clazz='a1') %}
    
    {% for data in datas %}
  • {{data}}
  • {% endfor %}
{% endmacro %}

index4.html:

{% import 'marco.html' as ma %}





    
    macro的使用
    


{{ma.input('username','username')}}
{{ma.input('password','password',type='password')}}
{{ ma.show_data(goods)}}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/878821.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号