SuperAPI AI 工具集

jinja2

编程与开发

查看项目

更新于 10-16 00:31

技能介绍

用途:在需要渲染 Jinja2 模板时应用本技能,包括生成 HTML 页面、邮件、配置文件和代码。

环境:创建一次 jinja2.Environment(loader=..., autoescape=...) 并复用。文件模板用 FileSystemLoader,已安装包用 PackageLoader。HTML 模板启用 autoescape=True 以防 XSS。

模板:用 {{ variable }} 输出,用 {% if/for/block %} 控制流程;用模板继承({% extends 'base.html' %})复用布局;可定义自定义过滤器实现可复用转换。

安全:渲染 HTML 时始终启用 autoescape=True;不可信模板使用 SandboxedEnvironment;绝不把用户输入当作模板代码渲染,只能作为模板数据;关闭自动转义时显式使用 |e 过滤器。

常见陷阱:不要直接用 Template(string),它会绕过环境的加载器与设置;注意未定义变量错误,开发期可用 undefined=StrictUndefined;避免在模板中写复杂逻辑,保持其专注展示。

限制:资料未提供具体版本、安装命令、性能数据或收费信息。