Flask 入门4:Flask 模板

1. 前言

Flask 拥有丰富的扩展方法,且都有统一的特点:简单和即学即用。当我们要实现某个功能之前,可以提前去搜一搜这个功能包是否已经存在,这样也能帮助我剩下很多时间。那么要去哪里找到这些扩展包呢,这里推荐两个方法供大家使用:

2. 模板

模板即一个服务器页面,在模板中我们可以使用服务端的语法,来控制最终的 html 页面输出。

jinja2 :https://jinja.palletsprojects.com/en/3.1.x/templates/#filters

python 复制代码
@app.template_filter('md')
def markdown_to_html(txt):
    return markdown(txt)


def read_md(filename):
    with open(filename) as md_file:
        content = reduce(lambda x, y: x + y, md_file.readlines())
    return content.decode('utf-8')


@app.context_processor
def inject_method():
    return dict(read_md=read_md)
html 复制代码
{{body | md |safe }}
{{read_md('xxxx.md')}}
相关推荐
洛依尘几秒前
深入浅出 Rust 生命周期:它不是语法负担,而是借用关系的说明书
后端·rust
学习指针路上的小学渣6 分钟前
Selenium笔记
python·selenium
经典小熊9 分钟前
接手同事代码1小时后,我发现了这个隐藏的return...
后端
编码忘我9 分钟前
java之线程池
java·后端·面试
SunnyDays101111 分钟前
使用 Python 在 Excel 中应用数据验证:详细指南
python·excel·数据验证
Jelena1577958579215 分钟前
1688.item_get_app接口:包装尺寸重量信息深度解析
开发语言·前端·python
Carsene15 分钟前
🎉 AutoScan v1.1.0 发布 - 通配符包扫描、排除过滤、自定义注解三大新特性
spring boot·后端
loserwang15 分钟前
Fluss#1386: 从日志恢复中的 OutOfOrder 来看 LEO、HW 与 Checkpoint 的区别
java·后端
PaytonD16 分钟前
基于 GPUI 实现 WebScoket 服务端之服务篇
后端·rust
用户83562907805122 分钟前
使用 Python 精准控制 Word 段落格式
后端·python