gpt4 book ai didi

python - 如何使用 Python Flask 获取 HTML 输入

转载 作者:太空宇宙 更新时间:2023-11-04 15:51:23 25 4
gpt4 key购买 nike

我计划在提交时从 HTML 表单获取输入,输入将被发送到 Python。这是 HTML 文件

<form method="GET">

<div class="form-inline">
<div class="form-group">
<input type="email" class="line-input" name="userEmail" placeholder="Email">
</div>
<div class="form-group">
<input type="password" class="line-input" name="userPassword" placeholder="Password">
</div>
</div>

<div class="form-inline">
<div class="form-group">
<input type="email" class="line-input" name="recipientMail" placeholder="Recipient">
</div>
<div class="form-group">
<input type="email" class="line-input" name="CCEmail" placeholder="CC">
</div>
</div>

<div class=" form-group">
<button type="submit" class="btn btn-light text-primary btn-block" style="margin : 20px 20px -10px 0px">Send Message</button>
</div>

</form>

现在我不知道最好的方法,我在 Python 中尝试过,但似乎不起作用

@app.route('/', methods=['POST'])
def form_post():
userEmail = request.form['userEmail']
userPassword = request.form['userPassword']
return userEmail, userPassword

有人能帮我吗?

最佳答案

将您的表单方法从GET 更改为POST,因为您的路由仅指定"POST",并且不会接受任何其他请求不同的类型:

<form method="POST">

编辑:如果您希望同时指定这两种方法,请确保您的路由在触发路由时检查当前正在发送的正确请求类型:

@app.route('/', methods=['POST','GET'])
def form_post():
if flask.request.method == 'POST'
userEmail = request.form['userEmail']
userPassword = request.form['userPassword']
return userEmail, userPassword
return flask.render_template('something.html')

但是请注意,您是在主路径 ('/') 上创建表单。最好返回指向具有以下表单代码的页面的链接:

@app.route('/')
def home():
return 'Welcome! <a href="/login">login here</a>'

@app.route('/login', methods=['GET', 'POST']):
if flask.request.method == 'POST'
userEmail = request.form['userEmail']
userPassword = request.form['userPassword']
return flask.redirect('/')
return flask.render_template('form_filename.html')

关于python - 如何使用 Python Flask 获取 HTML 输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49861167/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com