flask——包含,继承,宏

 包含,继承,宏  都是为了提高代码的效率,都是为了防止代码的沉余,浪费资源

(macro)

可以把它看做Jinja2中的一个函数,他会返回一个模板或者HTML字符串,为了避免反复的编写同样的模板代码,出现代码沉余,可以把它们协程函数以进行重用,需要在多出重复使用的模板代码片段可以写入单独的文件,在包含在所有模板中,以避免重复。

继承:

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

{%block top%}{% endblock %}先定义一个标签的内容,相当于在父模板中挖个坑,当子模板继承父模板时,可以进行填充。

子模板使用extends指令声明这个模板继承自那个模板,父模板中定义的快在子模板中被重新定义,在字幕板中调用父模板的内容可以使用super()。

extends指令声明这个模板继承自那儿~

使用继承的时候注意一下几点:不支持多继承,为了便于阅读,在子模板中使用extends时,尽量写在模板的第一行,不能再一个模板文件中定义多个相同名字的block标签,当在页面中使用多个block标签时,简易给结束标签起个名字,当多个block嵌套时,阅读性更好

 包含:

包含是除了宏和继承,还可以支持代码重用的功能,他的功能是将另一个模板整个加载到当前的模板中,并直接渲染。

 include 是包含的文件     , 包含在使用时,如果包含的模板的文件不存在时,程序会抛出TemplateNotFound,可以加上ignore missing 关键字,如果包含的模板文件不存在,会忽略这条include语句 。

宏(Macro),继承(Block),包含(include) 均能实现代码的复用。

继承的本质是代码替换,一般用来实现多个页面中重复不变的区域,宏的功能类似函数,可以穿入参数,需要定义,调用。,包含是直接将目标模板文件整个渲染出来。

 

转载于:https://www.cnblogs.com/weifeng-888/p/10174789.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值