Flask --------消息提示与异常处理

目标:
    如何给html页面传递变量?
            render_templates("xxx.html", message ="xxxxx", code="xxx")
    如何显示给html传递的变量?
            {{ message }}
    # 404异常处理函数;@app.errorhandler(404)
    # 抛出异常: abort
from flask import Flask,request,render_template,redirect,flash,abort
app=Flask(__name__)
users={
    'root':'redhat',
    'westos':'westos'
}
@app.route('/')
def index():
    return render_template('index.html')
@app.route('/login',methods=['GET','POST'])
def login():
    # 判断http方法,如果是post;
    if request.method=='POST':
        # 获取前端用户表单提交的数据
        username=request.form['name']
        passwd=request.form['passwd']
        # 判断用户名和密码是否正确
        if username in users:
            if passwd==users[username]:
                # 跳转到另一个页面
                return redirect('http://www.baidu.com')
            else:
                message='用户密码输入错误'
                return render_template('login.html',message=message)
        else:
            message='用户不存在,请注册'
            return render_template('login.html',message=message)
    # 如果不是post方法,用户没有提交数据,则进入登录页面
    else:
        return render_template('login.html')
# 404异常处理函数;@app.errorhandler(404)
@app.errorhandler(404)
def notfound(e):
    return render_template('404.html')
# 抛出异常;abort
@app.route('/users/<id>')
def user(id):
    if int(id) in range(1,10):
        return 'hello user'+str(id)
    else:
        abort(404)
if __name__ == '__main__':
    app.run(host='0.0.0.0',port=8979)

猜你喜欢

转载自blog.csdn.net/xijiao_jiao/article/details/80913564
今日推荐