将数据从HTML表单发送到Flask中的Python脚本

将数据从HTML表单发送到Flask中的Python脚本,python,html,forms,input,flask,Python,Html,Forms,Input,Flask,我的Python脚本中有以下代码: def cmd_wui(argv, path_to_tx): """Run a web UI.""" from flask import Flask, flash, jsonify, render_template, request import webbrowser app = Flask(__name__) @app.route('/tx/index/') def index(): """

我的Python脚本中有以下代码:

def cmd_wui(argv, path_to_tx):
    """Run a web UI."""
    from flask import Flask, flash, jsonify, render_template, request
    import webbrowser
    app = Flask(__name__)


    @app.route('/tx/index/')
    def index():
        """Load start page where you select your project folder
        or load history projects from local DB."""
        from txclib import get_version
        txc_version = get_version()
        prj = project.Project(path_to_tx)

        # Let's create a resource list from our config file
        res_list = []
        prev_proj = ''
        for idx, res in enumerate(prj.get_resource_list()):
                hostname = prj.get_resource_host(res)
        username, password = prj.getset_host_credentials(hostname)
        return render_template('init.html', txc_version=txc_version, username=username)
另外,我在init.HTML中有一个HTML表单:

<form>
<input type="text" id="projectFilepath" size="40" placeholder="Spot your project files">
<input type="button" id="spotButton" value="Spot">
</form>

当用户在python脚本中的变量上单击“spotButton”时,如何从“projectFilepath”传递用户输入


我是Python和Flask的新手,因此如果我犯了任何错误,请原谅。

表单标记需要设置一些属性:

  • 操作
    :表单数据在提交时发送到的URL。使用的
    url\u生成它。如果相同的URL处理显示表单和处理数据,则可以省略此项
  • method=“post”
    :使用post方法将数据作为表单数据提交。如果未给出,或显式设置为
    get
    ,则数据将在查询字符串(
    request.args
    )中使用get方法提交
  • enctype=“multipart/form data”
    :当表单包含文件输入时,它必须设置此编码,否则将不会上载文件,Flask也不会看到它们
  • 输入
    标记需要一个
    名称
    参数

    添加一个视图来处理提交的数据,该视图位于与输入的
    名称
    相同的键下的
    request.form
    。任何文件输入都将在
    request.files

    @app.route('/handle_data', methods=['POST'])
    def handle_data():
        projectpath = request.form['projectFilepath']
        # your code
        # return a response
    
    使用
    URL\u for
    将表单的
    操作设置为该视图的URL:


    您需要一个接收POST数据的Flask视图和一个发送数据的HTML表单

    from flask import request
    
    @app.route('/addRegion', methods=['POST'])
    def addRegion():
        ...
        return (request.form['projectFilePath'])
    
    
    项目文件路径: