我是python flask的新手,我正在尝试使用相同的方式验证表单。以下是HTML代码
<form action="" method=post enctype=multipart/form-data>
<p><input type=file name=file>
<input type=submit value=Upload id="my_id">
</form>
当用户点击上传时,请求将被发送到python烧瓶代码。但我想做的是,我想在没有明确指定的情况下检索ID(在本例中为my_id)。
if request.method == 'POST':
try:
file = request.files.get('file')
现在我直接指定“文件”来上传文件。但我想获取上传按钮的ID而不直接指定它。请帮我这样做。
为什么我需要这个是因为,我将在不久的将来添加更多上传选项。因此,如果我正确地获得了ID,我可以直接接收上传的与该按钮有关的文件。
先感谢您
无法从服务器检测单击按钮标签的id
,因为id未发送到服务器。发送到服务器的是name
:value
对的列表。
因此,可以创建三个具有不同名称和/或值的提交按钮。
<input type="submit" name="submit_button" value="Upload Lion">
<input type="submit" name="submit_button" value="Upload Tiger">
然后,在服务器端,可以检测到单击的按钮:
if request.form['submit_button'] == "Upload Lion":
process_lion()
elif request.form['submit_button'] == "Upload Tiger":
process_tiger()
另一方面,<button>
标记为您提供更多自由,因为您可以指定要发送到服务器的值与标签不同,例如:
<button type="submit" name="submit_button" value="lion">Upload</button>
<button type="submit" name="submit_button" value="tiger">Upload</button>
然后:
if request.form['submit_button'] == "lion":
process_lion()
elif request.form['submit_button'] == "tiger":
process_tiger()