flask框架模板宏macro的定义及使用

示例1

(index.html)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
{% macro input(type="text",value="",size=50) %}
<input type="{{type}}" value="{{value}}" size="{{size}}">
{% endmacro %}

<p>默认:</p>{{ input() }}
<p>密码框:</p>{{ input("password") }}
<p>size=100:</p>{{ input(size=100) }}

</body>
</html>

app.py

# -*- coding:utf-8 -*-


from flask import Flask, render_template

app = Flask(__name__)


@app.route("/")
def index():
	return render_template("index.html")


if __name__ == "__main__":
	app.run()

测试

1

示例2(外部模板宏)

(minput.html)

{% macro input(type="text",value="",size=50) %}
<input type="{{type}}" value="{{value}}" size="{{size}}">
{% endmacro %}

(index.html)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
{% import "minput.html" as minput %}
<p>默认:</p>{{ minput.input() }}
<p>密码框:</p>{{ minput.input("password") }}
<p>size=100:</p>{{ minput.input(size=100) }}

</body>
</html>

猜你喜欢

转载自blog.csdn.net/weixin_40775077/article/details/84895310