91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Flask框架學習筆記之消息提示與異常處理操作詳解

發布時間:2020-08-30 21:53:07 來源:腳本之家 閱讀:267 作者:Cytues 欄目:開發技術

本文實例講述了Flask框架學習筆記之消息提示與異常處理操作。分享給大家供大家參考,具體如下:

flask通過flash方法來顯示提示消息:

from flask import Flask, flash, render_template, request, abort

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

@app.route('/')
def index():
  flash("Hello loli")
  return render_template("flash.html")

flash模板:flask開放了get_flashed_messages函數給模板使用,用來得到視圖函數中的flash里的字符串(消息)。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
<h2>Hello Login</h2>
<h3>{{ get_flashed_messages()[0] }}</h3>
</body>
</html>

這里制作一個簡單的表單模擬登陸界面提示:使用request方法得到輸入表單中的數據。

@app.route('/login', methods=['POST'])
def login():
  # 獲取表單
  form = request.form
  # 獲取表單數據
  username = form.get('username')
  password = form.get('password')
  # 若不存在username則flash(xxx)
  if not username:
    flash('Please input username')
    return render_template("flash.html")
  if not password:
    flash('Please input password')
    return render_template("flash.html")

  if username == "loli" and password == "520":
    flash("Login success")
    return render_template("flash.html")
  else:
    flash("username or password wrong")
    return render_template('flash.html')

表單模板:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
<h2>Hello Login</h2>

<form action="/login" method="post">
  <input type="text" name="username">
  <input type="password" name="password">
  <input type="submit" value="Submit">
</form>

<h3>{{ get_flashed_messages()[0] }}</h3>

</body>
</html>

Flask框架學習筆記之消息提示與異常處理操作詳解

未輸入任何數據提示輸入username

Flask框架學習筆記之消息提示與異常處理操作詳解

未輸入密碼顯示的flash提示消息。

Flask框架學習筆記之消息提示與異常處理操作詳解

用戶名和密碼不符時。

Flask框架學習筆記之消息提示與異常處理操作詳解

登陸成功界面。

flask同樣可以自己設置404等錯誤界面:flask提供了errorhandler修飾器來設置自己的錯誤界面。

@app.errorhandler(404)
def not_found(e):
  return render_template("404.html")

自己設置的簡單404錯誤模板:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
  <h2>404 頁面不存在</h2>
  <h3>Sorry</h3>
</body>
</html>

Flask框架學習筆記之消息提示與異常處理操作詳解

也可以在正常的界面發生404錯誤時轉到這個模板裝飾:用flask import abort方法來引起一個404錯誤. 只要user_id不為520則觸發404頁面。

@app.route('/users/<user_id>')
def users(user_id):
  if int(user_id) == 520:
    return render_template("user.html")
  else:
    abort(404)

user模板:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
  <h2>Loli </h2>
</body>
</html>

源碼:

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

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

@app.route('/')
def index():
  flash("Hello loli")
  return render_template("flash.html")

@app.route('/login', methods=['POST'])
def login():
  # 獲取表單
  form = request.form
  # 獲取表單數據
  username = form.get('username')
  password = form.get('password')
  # 若不存在username則flash(xxx)
  if not username:
    flash('Please input username')
    return render_template("flash.html")
  if not password:
    flash('Please input password')
    return render_template("flash.html")

  if username == "loli" and password == "520":
    flash("Login success")
    return render_template("flash.html")
  else:
    flash("username or password wrong")
    return render_template('flash.html')

@app.errorhandler(404)
def not_found(e):
  return render_template("404.html")

@app.route('/users/<user_id>')
def users(user_id):
  if int(user_id) == 520:
    return render_template("user.html")
  else:
    abort(404)

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

希望本文所述對大家基于flask框架的Python程序設計有所幫助。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

工布江达县| 陆丰市| 新营市| 财经| 织金县| 伊宁县| 揭西县| 奇台县| 拜城县| 隆子县| 班玛县| 博罗县| 满城县| 肃宁县| 昆山市| 田东县| 同心县| 明溪县| 临安市| 阿拉善左旗| 衡阳县| 阜康市| 错那县| 梅州市| 明水县| 迁安市| 蒙自县| 德安县| 宣武区| 凤庆县| 台前县| 临安市| 长阳| 新安县| 晴隆县| 靖江市| 鹿泉市| 重庆市| 山西省| 万年县| 吉隆县|