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')}}
相关推荐
hui函数16 小时前
Python系列Bug修复|如何解决 pip install 报错 ModuleNotFoundError: No module named ‘pygame’ 问题
python·bug·pip
xcLeigh16 小时前
Python入门:Python3 operator模块全面学习教程
开发语言·python·学习·教程·python3·operator
xcLeigh16 小时前
Python小游戏实战:实现2048游戏小游戏附源码
python·游戏·教程·pygame·2048·python3
Gopher_HBo16 小时前
接入层LVS
后端
404号扳手16 小时前
Java 基础知识(六)
java·后端
大叔带刺16 小时前
使用python创建自己的专属星座签名APP:Name2Constell
开发语言·python·pygame
前端市界17 小时前
LotDB Vue 阿里云 ECS 部署实战记录
后端
卷无止境17 小时前
SimPy 进程通信:让仿真世界里的"对话"变得优雅
后端
ZengLiangYi17 小时前
多格式文件解析:JSONL / SQLite / Event Stream
前端·javascript·后端
前端市界17 小时前
使用 `acme.sh` + 阿里云 DNS API 申请 Let’s Encrypt 通配符证书,并配置 Nginx 自动续期
后端