这是一个简单的Python文件,它的目的是在使用POST方法的情况下将用户发送到一个页面,如果没有,则只是将他们重定向到 "登录 "页面。我正在使用Sublime,它将返回语句高亮显示为一个错误。当我在命令提示符下运行我的文件时,我也得到了一个错误信息
否则。 ^SyntaxError: invalid syntax(无效语法)
这是我的代码...
from flask import Flask, redirect, url_for, render_template, request, session
app = Flask(__name__)
@app.route("/")
def home():
return render_template("index.html")
@app.route("/login", methods=["POST", "GET"])
def login():
if request.method == "POST":
user = request.form["nm"]
session["user"] = user
return redirect(url_for("user")
else :
return render_template("login.html")
## I am getting a syntax error on the two lines above, specifically on the 'else' statement.
@app.route("/user")
def user(usr):
if "user" in session:
user = session["user"]
return f"<h1>{user}</h1>"
else:
return redirect(url_for("login"))
if __name__ == "__main__":
app.run(debug=True)
你忘了关闭 return redirect(url_for("user")
第14行的第二个括号。
你在这一行少了一个近亲。return redirect(url_for("user")