Flask 中的一些基本使用,如:语句控制、传递变量等与 Django 框架有异曲同工之妙,这里就不一 一 讲解了,下面对宏和过滤器两个知识点进行说明。
1.宏
在 Flask 中,若要渲染模板,则需要使用如下函数:
# 用于渲染模板文件。函数中的第 1 个参数是模板的文件名,后面的参数都是键值对,
# 表示模板中变量对应的真实值。
render_template(name, **context)
类似于 Python 中的函数,宏的作用就是在模板中避免重复利用代码而导致代码冗余。Jinja2模板支持宏,还可以导入宏,将需要在多处重复使用的模板片段写入单独的文件中,再包含在所有的模板中,避免重复。
# 基本语法:
{% macro 函数名(参数 1,参数 1=2, ..) %}
语法
{% endmacro %}
# 若要在另一个模板中导入宏,语法如下:
{% import html 名 as 别名 %}
{% 别名.函数 %}
2.过滤器
在 Flask 框架中,对于字符串的过滤操作,主要有:
{
{ '<em>hello</em>' | safe }} # 禁用转义
{
{ '<em>hello</em>' | striptags }} # 删除标签
{
{ ' hello ' | trim }} # 去掉首尾空格
{
{ 'hello' | capitalize }}