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')}}
相关推荐
Thomas.Sir5 分钟前
第十二章:RAG知识库开发之【RAG的预检索和后检索:核心优化策略与实践】
人工智能·python·ai·rag·预检索·后检索
南通DXZ7 分钟前
Python爬虫进阶:Selenium模拟真人操作(解决反爬+动态网页)
爬虫·python·selenium
yaoxin5211238 分钟前
372. Java IO API - 用户定义的文件属性
java·开发语言·python
ZhouDevin16 分钟前
【算法实战】DEIMv2全流程复现
人工智能·python·算法·目标检测·计算机视觉·transformer
long_songs27 分钟前
Python编程第03课:第一个Python程序 - Hello World深度解析
开发语言·python
deephub28 分钟前
从零构建 Mini-vLLM:KV-Cache、动态批处理与分布式推理全流程
人工智能·python·深度学习·大语言模型·vllm
生信研究猿30 分钟前
leetcode 141.环形链表
python·leetcode·链表
_MyFavorite_33 分钟前
JAVA重点基础、进阶知识及易错点总结(32)设计模式(建造者、原型)
java·python·设计模式
zzj_26261037 分钟前
实验三 循环结构程序设计(Python)
服务器·python·apache
lifewange42 分钟前
Ruby语言在测试领域的应用
开发语言·后端·ruby