首页 > 解决方案 > 如何接收来自按钮的输入

问题描述

我有这个 html 按钮

<input type="button" value="Setup a Automation Bot" class="setupbot" required='required' name='setupbot'>

还有这个烧瓶代码

from flask import Flask, request, render_template
import os

IMAGE_FOLDER = os.path.join('static', 'images')

app = Flask(__name__)
app.config['UPLOAD_FOLDER'] = IMAGE_FOLDER



@app.route('/')
def my_form():
    full_filename = os.path.join(app.config['UPLOAD_FOLDER'], 'disp_final.png')
    return render_template('form.html', user_image = full_filename)

if __name__ == "__main__":
    app.run()

我希望当单击按钮时,一些代码行被写入输出文件

我尝试了很多东西,但是每当我单击按钮时,什么都没有发生。我对 Flask 很陌生,任何帮助将不胜感激!

标签: pythonhtmlflask

解决方案


您需要在任何想要做某事的按钮上设置 POST 方法

例如,如果您在 HTML 中的按钮是 <input type="submit" name="setupbot" value="Setup a Automation Bot">

您的 Flask 代码需要类似于以下内容

@app.route("/", methods=['GET', 'POST'])
def contact():
    if request.method == 'POST':
        if request.form['setupbot'] == 'Setup a Automation Bot':
            pass # do the thing
        else:
            pass # other case
    elif request.method == 'GET':
        return render_template('contact.html', form=form)

推荐阅读