最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Flask之閃現(xiàn)flash原理及使用

 更新時間:2023年12月10日 08:53:47   作者:孤寒者  
Flask中的閃現(xiàn)是一種在請求之間傳遞消息的機制,本文就來介紹一下Flask之閃現(xiàn)flash原理及使用,具有一定的參考價值,感興趣的可以了解一下

閃現(xiàn)—flash

這可不是LOL或是王者榮耀里的閃現(xiàn)哦~

Flask 中的 “閃現(xiàn)”(flash)是一種在請求之間傳遞消息的機制。它允許你將一條消息保存在一個請求中,在下一個請求中獲取并顯示該消息,然后立即將其刪除【設(shè)置完之后閱后即焚!】。

Flask 中的閃現(xiàn)機制涉及以下兩個函數(shù):

  • flash(message, category='message'): 這個函數(shù)用于在當前請求中閃現(xiàn)一條消息。message 參數(shù)是要閃現(xiàn)的消息內(nèi)容,category 參數(shù)是可選的消息分類,默認為 'message'。通常情況下,消息可以分為不同的類別(如成功消息、錯誤消息等),以便在前端進行樣式化或特殊處理。
  • get_flashed_messages(with_categories=False, category_filter=[]): 這個函數(shù)用于獲取所有已閃現(xiàn)的消息。with_categories 參數(shù)控制是否返回消息和其對應的分類,默認為 False,即只返回消息列表。category_filter 參數(shù)是可選的,用于指定要獲取的特定分類的消息。

實戰(zhàn)講解:

# -*- coding: utf-8 -*-
from flask import Flask, flash, redirect, render_template, request, url_for

app = Flask(__name__)
app.secret_key = 'GuHanZheIsCool'      # 使用閃現(xiàn)必須設(shè)置secret_key哦~文末講了原因。

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


@app.route('/login', methods=['GET', 'POST'])
def login():
    if request.method == 'POST':
        # Perform login validation
        username = request.form.get('username')
        password = request.form.get('password')

        if username == 'admin' and password == 'GuHanZhe':
            flash('Login successful!', 'success')
            return redirect(url_for('index'))
        else:
            flash('Invalid credentials!', 'error')

    return render_template('login.html')


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

在上述代碼中,使用 flash 函數(shù)在登錄路由中閃現(xiàn)一條成功或錯誤消息。然后,在首頁路由中使用 get_flashed_messages 函數(shù)獲取并顯示這些已閃現(xiàn)的消息。

頁面html代碼:

<!-- index.html -->
{% with messages = get_flashed_messages() %}
    {% if messages %}
        <ul class="messages">
            {% for message in messages %}
                <li>{{ message }}</li>
            {% endfor %}
        </ul>
    {% endif %}
{% endwith %}



<!-- login.html -->
<form action="{{ url_for('login') }}" method="POST">
    {% with messages = get_flashed_messages(category_filter=['error']) %}
    {% if messages %}
    <ul class="errors">
        {% for message in messages %}
        <li>{{ message }}</li>
        {% endfor %}
    </ul>
    {% endif %}
    {% endwith %}

    <!-- Form fields -->
    <input type="text" name="username"><br>
    <input type="text" name="password"><br>
    <button type="submit">Login</button>
</form>

在模板中,使用 get_flashed_messages 函數(shù)來獲取已閃現(xiàn)的消息,并根據(jù)需要在適當?shù)奈恢眠M行渲染和顯示??梢愿鶕?jù)消息的分類進行樣式化或特殊處理,以便在前端進行區(qū)分和展示。

正常訪問登錄頁面:

輸入錯誤賬號密碼點擊‘login’后:

刷新一下頁面就會發(fā)現(xiàn)提示信息沒了。這就是閱后即焚!

當輸入正確的賬號密碼點擊‘login’后:

刷新頁面就會發(fā)現(xiàn)提示信息無了。這就是閱后即焚!

拓展:使用session簡單實現(xiàn)閃現(xiàn)的功能:

from flask import Flask, session

app = Flask(__name__)
app.secret_key = 'GuHanZheIsCool'


@app.route('/x1')
def view_x1():
    session['msg'] = '孤寒者真帥~'
    return '視圖函數(shù)x1'


@app.route('/x2')
def view_x2():
    msg = session.pop('msg')
    print(msg)
    return '視圖函數(shù)x2'


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

訪問x1路由設(shè)置:

訪問x2路由,控制臺會打印msg,二次訪問會報錯:

其實我們直接進入flash源碼就會發(fā)現(xiàn)其內(nèi)部就是基于session實現(xiàn)的:

 到此這篇關(guān)于Flask之閃現(xiàn)flash原理及使用的文章就介紹到這了,更多相關(guān)Flask 閃現(xiàn)flash內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python實現(xiàn)批量上傳本地maven庫到nexus

    Python實現(xiàn)批量上傳本地maven庫到nexus

    這篇文章主要為大家詳細介紹了如何使用Python實現(xiàn)批量上傳本地maven庫到nexus,文中的示例代碼講解詳細,具有一定的借鑒價值,需要的小伙伴可以參考下
    2024-01-01
  • Python實現(xiàn)迷宮生成器的詳細代碼

    Python實現(xiàn)迷宮生成器的詳細代碼

    這篇文章主要介紹了Python實現(xiàn)迷宮生成器的詳細代碼,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-07-07
  • Python新手入門最容易犯的錯誤總結(jié)

    Python新手入門最容易犯的錯誤總結(jié)

    這篇文章主要總結(jié)了一些關(guān)于Python新手入門最容易犯的錯誤,希望通過學習本文總結(jié)的十二點易犯錯誤點,能夠給新手們帶來一定的幫助,需要的朋友可以參考學習,下面來一起看看吧。
    2017-04-04
  • python解決方案:WindowsError: [Error 2]

    python解決方案:WindowsError: [Error 2]

    使用Python的rename()函數(shù)重命名文件時出現(xiàn)問題,提示 WindowsError: [Error 2] 錯誤,需要的朋友可以參考下
    2016-08-08
  • 基于Python編寫一個IP地址存活檢查器

    基于Python編寫一個IP地址存活檢查器

    這篇文章主要為大家詳細介紹了如何基于Python編寫一個IP地址存活檢查器,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下
    2024-11-11
  • python學習之使用Matplotlib畫實時的動態(tài)折線圖的示例代碼

    python學習之使用Matplotlib畫實時的動態(tài)折線圖的示例代碼

    這篇文章主要介紹了python學習之使用Matplotlib畫實時的動態(tài)折線圖的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-02-02
  • Python文件讀寫常見用法總結(jié)

    Python文件讀寫常見用法總結(jié)

    今天小編就為大家分享一篇關(guān)于Python文件讀寫常見用法總結(jié),小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • Python實現(xiàn)的遠程登錄windows系統(tǒng)功能示例

    Python實現(xiàn)的遠程登錄windows系統(tǒng)功能示例

    這篇文章主要介紹了Python實現(xiàn)的遠程登錄windows系統(tǒng)功能,結(jié)合實例形式分析了Python基于wmi模塊的遠程連接與進程操作相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2018-06-06
  • python中pandas庫的iloc函數(shù)用法解析

    python中pandas庫的iloc函數(shù)用法解析

    在 Pandas 中,.iloc 是一種用于基于整數(shù)位置進行索引的屬性,可以用于獲取 DataFrame 或 Series 中的數(shù)據(jù),這篇文章主要介紹了python中pandas庫的iloc函數(shù)用法,需要的朋友可以參考下
    2023-05-05
  • 淺談Selenium 控制瀏覽器的常用方法

    淺談Selenium 控制瀏覽器的常用方法

    這篇文章主要介紹了淺談Selenium 控制瀏覽器的常用方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-12-12

最新評論

元谋县| 溧水县| 安阳县| 伊春市| 亳州市| 远安县| 拉萨市| 西林县| 株洲县| 绥滨县| 乐平市| 普兰店市| 南城县| 双鸭山市| 襄樊市| 房山区| 阳谷县| 谷城县| 宝清县| 余姚市| 兴安盟| 东莞市| 米脂县| 安丘市| 吐鲁番市| 永春县| 定边县| 汤原县| 邵武市| 鄂伦春自治旗| 铜陵市| 吉木乃县| 清新县| 榆中县| 吉隆县| 庆元县| 荥经县| 阿拉尔市| 丰县| 许昌市| 辛集市|