Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Python从HTML标记中检索ID或名称_Python_Flask - Fatal编程技术网

使用Python从HTML标记中检索ID或名称

使用Python从HTML标记中检索ID或名称,python,flask,Python,Flask,我是PythonFlask的新手,我正在尝试使用相同的方法验证表单。下面是HTML代码 <form action="" method=post enctype=multipart/form-data> <p><input type=file name=file> <input type=submit value=Upload id="my_id"> </form> 现在我直接指定“文件”来上传文件。但是我想在不直接指定的

我是PythonFlask的新手,我正在尝试使用相同的方法验证表单。下面是HTML代码

<form action="" method=post enctype=multipart/form-data>
  <p><input type=file name=file>
     <input type=submit value=Upload id="my_id">
</form>
现在我直接指定“文件”来上传文件。但是我想在不直接指定的情况下获取upload按钮的ID。请帮我做这件事

我之所以需要这个是因为,我将在不久的将来添加更多的上传选项。因此,如果我得到正确的ID,我可以直接接收上传的与该按钮相关的文件


提前感谢

无法从服务器检测单击按钮标签的
id
,因为该id未发送到服务器。发送到服务器的是
名称
对的列表

因此,可以创建三个具有不同名称和/或值的提交按钮

<input type="submit" name="submit_button" value="Upload Lion">
<input type="submit" name="submit_button" value="Upload Tiger">
另一方面,
标记为您提供了更多的自由,因为您可以指定要发送到服务器的值与标签不同,例如:

<button type="submit" name="submit_button" value="lion">Upload</button>
<button type="submit" name="submit_button" value="tiger">Upload</button>

无法从服务器检测单击按钮标记的
id
,因为该id未发送到服务器。发送到服务器的是
名称
对的列表

因此,可以创建三个具有不同名称和/或值的提交按钮

<input type="submit" name="submit_button" value="Upload Lion">
<input type="submit" name="submit_button" value="Upload Tiger">
另一方面,
标记为您提供了更多的自由,因为您可以指定要发送到服务器的值与标签不同,例如:

<button type="submit" name="submit_button" value="lion">Upload</button>
<button type="submit" name="submit_button" value="tiger">Upload</button>

为什么“不直接指定”?请求数据的要点是将name:value对设置为服务器。在服务器中,指定要读取值的名称。为什么不指定名称呢?用例是:假设我要求用户上传三张图片,我有三个不同的功能,它们相互独立。例如:我要求用户上传老虎、狮子、猫的图片,我对这些动物都有一个功能。如果用户上传tiger,请求将发送到python代码,在那里它读取上传ID(我将设置动物的名称(在本例中为tiger)),如果单击的上传按钮具有tiger ID,我将读取tiger文件,最好使用
按钮
标签提交不同的值,而不是不同的名称:
上传
。然后读取烧瓶中点击按钮的数值。我认为这很好。你能回答一个小的代码片段的例子,这样作为一个初学者,我就很容易理解为什么“不直接指定它”?请求数据的要点是将name:value对设置为服务器。在服务器中,指定要读取值的名称。为什么不指定名称呢?用例是:假设我要求用户上传三张图片,我有三个不同的功能,它们相互独立。例如:我要求用户上传老虎、狮子、猫的图片,我对这些动物都有一个功能。如果用户上传tiger,请求将发送到python代码,在那里它读取上传ID(我将设置动物的名称(在本例中为tiger)),如果单击的上传按钮具有tiger ID,我将读取tiger文件,最好使用
按钮
标签提交不同的值,而不是不同的名称:
上传
。然后读取烧瓶中点击按钮的数值。我认为这很好。你能回答一个小的代码片段的例子,这样作为一个初学者,这对我来说很容易
if request.form['submit_button'] == "lion":
    process_lion()
elif request.form['submit_button'] == "tiger":
    process_tiger()