摘要: 当从模板生成 HTML 时,始终有这样的风险:变量包含影响已生成 HTML 的字符。有两种 解决方法:手动转义每个字符或默认自动转义所有的东西。 Jinja 两者都支持,使用哪个取决于应用的配置。默认的配置未开启自动转义有这样几个 原因: 转义所有非安全值的东西也意味着 Jijna 转义已知不包含 阅读全文
posted @ 2017-03-16 17:05 sysnap 阅读(2974) 评论(0) 推荐(0)
摘要: 过滤器 过滤器是个函数,参数就是管道(pipe)前面那个变量。比如 123|myfilter,123就是myFilter的参数。如果需要两个参数,则在myFilter后面加(),即123|myFilter(234) 主要作用就是 可以在模板中以管道的方式用pyhton的代码处理字符串,过滤器用 | 阅读全文
posted @ 2017-03-16 17:03 sysnap 阅读(2413) 评论(0) 推荐(0)
摘要: 一 宏 宏类似常规编程语言中的函数。它们用于把常用行为作为可重用的函数,取代 手动重复的工作。如果宏在不同的模板中定义,你需要首先使用 import,比如 在命名空间中,宏之后可以像函数一样调用: 二 call宏和{{ caller() }} 这里我们使用了”{% call %}”语句块来调用宏,语 阅读全文
posted @ 2017-03-16 12:27 sysnap 阅读(2022) 评论(0) 推荐(1)