flask之jianjia2模板語法


一、模板語法

渲染變量:{{ 變量名 }}

循環:{% for index,items in data.items() %}

條件判斷: {% if 變量名 %} {% else %} {% endif %}

執行函數: {{ 函數名("函數參數") }}

執行html:{{ 變量名|safe }}

from  flask import Flask,render_template,Markup
app = Flask(__name__)

USERS = {
    1:{'name':'張三','age':18,'gender':'男','text':"道路千萬條"},
    2:{'name':'李四','age':28,'gender':'男','text':"安全第一條"},
    3:{'name':'王五','age':18,'gender':'女','text':"行車不規范"},
}


def func1(flag):
    return Markup(f"<h1>jason dsb ?{flag}</h1>" )

@app.route("/index")
def index():
    data=USERS
    flag=True
    htm="<h1>jason dsb</h1>"
    return render_template("index1.html",data=data,flag=flag,name="sb",name1="sb1",htm=htm,func=func1)

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

html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
{% for index,items in data.items() %}
<tr>
    <td>{{index}}</td>
    <td>{{items}}</td>
    <td>{{items.name}}</td>
    <td>{{items['name']}}</td>
    <td>{{items.get('name')}}</td>
    <td><a href="/detail/{{index}}">查看詳細</a></td>
</tr>
{% endfor %}

{% if flag %}
{{name}}
{% else %}
{{name1}}
{% endif %}
<br>
{{htm|safe}}
{{func("yes")}}
</body>
</html>

注意:

1.Markup等價django的mark_safe ,

2.extends,include一模一樣


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM