<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ### 導航 - [索引](# "總目錄") - [下一頁](# "用 jQuery 實現 Ajax") | - [上一頁](# "模板繼承") | - [Flask 0.10.1 文檔](#) ? - [Flask 代碼模式](#) ? # 消息閃現 好的應用和用戶界面的重點是回饋。如果用戶沒有得到足夠的反饋,他們可能最終會對您的應用產生不好的評價。Flask 提供了一個非常簡單的方法來使用閃現系統向用戶反饋信息。閃現系統使得在一個請求結束的時候記錄一個信息,然后在且僅僅在下一個請求中訪問這個數據。這通常配合一個布局模板實現。 ### 簡單的閃現 這里是一個完成的例子: ~~~ from flask import Flask, flash, redirect, render_template, \ request, url_for app = Flask(__name__) app.secret_key = 'some_secret' @app.route('/') def index(): return render_template('index.html') @app.route('/login', methods=['GET', 'POST']) def login(): error = None if request.method == 'POST': if request.form['username'] != 'admin' or \ request.form['password'] != 'secret': error = 'Invalid credentials' else: flash('You were successfully logged in') return redirect(url_for('index')) return render_template('login.html', error=error) if __name__ == "__main__": app.run() ~~~ 這里的 layout.html 模板完成了所有的魔術: ~~~ <!doctype html> <title>My Application</title> {% with messages = get_flashed_messages() %} {% if messages %} <ul class=flashes> {% for message in messages %} <li>{{ message }}</li> {% endfor %} </ul> {% endif %} {% endwith %} {% block body %}{% endblock %} ~~~ 這里是 index.html 模板: ~~~ {% extends "layout.html" %} {% block body %} <h1>Overview</h1> <p>Do you want to <a href="{{ url_for('login') }}">log in?</a> {% endblock %} ~~~ 這里是登陸模板: ~~~ {% extends "layout.html" %} {% block body %} <h1>Login</h1> {% if error %} <p class=error><strong>Error:</strong> {{ error }} {% endif %} <form action="" method=post> <dl> <dt>Username: <dd><input type=text name=username value="{{ request.form.username }}"> <dt>Password: <dd><input type=password name=password> </dl> <p><input type=submit value=Login> </form> {% endblock %} ~~~ ### 分類閃現 0.3 新版功能. 當閃現一個消息時,是可以提供一個分類的。未指定分類時默認的分類為 'message' 。可以使用分類來提供給用戶更好的反饋,例如,錯誤信息應該被顯示為紅色北京。 要使用一個自定義的分類,只要使用 [flash()](# "flask.flash") 函數的第二個參數: ~~~ flash(u'Invalid password provided', 'error') ~~~ 在模板中,您接下來可以調用 [get_flashed_messages()](# "flask.get_flashed_messages") 函數來返回這個分類,在下面的情景中,循環看起來將會有一點點不一樣: ~~~ {% with messages = get_flashed_messages(with_categories=true) %} {% if messages %} <ul class=flashes> {% for category, message in messages %} <li class="{{ category }}">{{ message }}</li> {% endfor %} </ul> {% endif %} {% endwith %} ~~~ 這僅僅是一個渲染閃現信息的例子,您可也可以使用分類來加入一個諸如<strong>Error:</strong> 的前綴給信息。 ### 過濾閃現消息 0.9 新版功能. 可選地,您可以將一個分類的列表傳入到 [get_flashed_messages()](# "flask.get_flashed_messages") 中,以過濾函數返回的結果。如果您希望將每個分類渲染到獨立的塊中,這會非常有用。 ~~~ {% with errors = get_flashed_messages(category_filter=["error"]) %} {% if errors %} <div class="alert-message block-message error"> <a class="close" href="#">×</a> <ul> {%- for msg in errors %} <li>{{ msg }}</li> {% endfor -%} </ul> </div> {% endif %} {% endwith %} ~~~ ? 版權所有 2013, Armin Ronacher.
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看