首頁 > 後端開發 > Python教學 > 為什麼我的 Flask 視圖回傳「TypeError: 'bool' object is not callable」?

為什麼我的 Flask 視圖回傳「TypeError: 'bool' object is not callable」?

Barbara Streisand
發布: 2024-12-16 06:54:16
原創
198 人瀏覽過

Why Does My Flask View Return

Flask 視圖中的「TypeError: 'bool' object is not callable」:故障排除

簡介簡介🎜> 在調試觸發500 狀態的Flask在視圖時,開發者可能會遇到神秘錯誤「TypeError:『bool』物件不可呼叫。」本文深入探討了此錯誤的原因並提供了解決方案。

理解錯誤

Flask 視圖可以傳回各種類型,包括字串、Flask Response 物件、元組(字串、狀態、標頭)和WSGI 應用程式.但是,如果傳回的值與任何預期類型都不匹配,Flask 會將其解釋為 WSGI 應用程式。

錯誤原因

在提供的範例中,視圖傳回 True 表示登入成功。但是,布林值 True 不是有效的 WSGI 應用程式。因此,Flask 假定它是一個WSGI 應用程序並嘗試調用它,導致錯誤“TypeError: 'bool' object is not callable.”

解決方案

要要解決此問題,視圖必須傳回Flask 文件中指定的有效回應類型之一:關於回應。在這種情況下,傳回狀態碼為 200 的 Response 物件以及指示登入成功的訊息是合適的。

透過確保視圖傳回有效的回應類型,開發人員可以防止「TypeError」: 'bool' object is not callable」錯誤並提高 Flask 應用程式的可靠性。
@app.route('/login', methods=['POST'])
def login():
    username = request.form['username']
    user = User.query.filter_by(username=username).first()

    if user:
        login_user(user)
        return Response("Login successful", status=200)

    return Response("Login failed", status=401)
登入後複製

以上是為什麼我的 Flask 視圖回傳「TypeError: 'bool' object is not callable」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板