如何解决表单函数是问题的请求


from flask import Flask, redirect, url_for, render_template, request
app = Flask(__name__)
@app.route("/logins",methods=["Post","GET"])
def login():
if request.method == "POST":
user = request.form["name"]
return redirect(url_for("user", usr=user))
else:
return render_template("login.html")
@app.route("/<usr>")
def user(usr):
return f"<h1>{usr}<h1>"
if __name__ == "__main__":
app.run(debug=True)

错误显示:浏览器(或代理(发送了一个此服务器无法理解的请求。KeyError:"name">

错误在请求中。form['name'],请尝试此

from flask import Flask, redirect, url_for, render_template, request
app = Flask(__name__)
@app.route("/logins",methods=["POST","GET"])
def login():
if request.method == "POST":
user = request.form["login"]
return redirect(url_for("user", usr=user))
else:
return render_template("login.html")
@app.route("/<usr>")
def user(usr):
return f"<h1>{usr}<h1>"
if __name__ == "__main__":
app.run(debug=True)

html表单:

<form action="{{ url_for('login') }}" method="post">
<input name="login" placeholder="Login">
<input name="password" type="password" placeholder="password">
<button type="submit">Send</button>
</form>

最新更新