不能用Flask (Python) POST简单的HTML表单



这是一个非常简单的问题,我很不好意思在这里问它,但是我在过去的3个小时里一直在谷歌上搜索答案,没有结果。

基本上,我试图使用HTML表单发送信息,并使用Flask python脚本接受该信息。问题是,每次提交表单,都显示Cannot POST path/form。html

HTML表单:

<form method="post"> 
<label for="firstname">First Name:</label>
<input type="text" id="firstname" name="fname" placeholder="firstname">
<label for="lastname">Last Name:</label>
<input type="text" id="lastname" name="lname" placeholder="lastname">
<button type="submit">Login</button>
Python/Flask代码:
from flask import Flask, request, render_template  
# Flask constructor
app = Flask(__name__)
# A decorator used to tell the application
# which URL is associated function
@app.route('/', methods =["GET", "POST"])
def gfg():
if request.method == "POST":
# getting input with name = fname in HTML form
first_name = request.form.get("fname")
# getting input with name = lname in HTML form
last_name = request.form.get("lname")
return "Your name is "+first_name + last_name
return render_template("form.html")
if __name__=='__main__':
app.run()

我知道这应该是简单的,但web开发不是我的强项,这真的是我的元素。这是服务器问题吗?提前谢谢你。

尝试如下:

@app.route('/', methods =["GET", "POST"])
def gfg():
if request.method == "POST":
# getting input with name = fname in HTML form
if "fname" in request.form:
first_name = request.form['fname]
# getting input with name = lname in HTML form
if "lname" in request.form:
last_name = request.form["lname"]

if first_name and last_name:
print("Your name is "+first_name + last_name)

return render_template("form.html")

最新更新