首页 > 解决方案 > 上传文件时传递变量

问题描述

我有一个包含许多字段的表单,其中一个是文件上传。

在表单中有这个字段:

<div class="form-group">
   <label class="control-label col-md-2">ID Ordine</label>
      <div class="col-md-4">
         <input class="form-control" type="text" name="id" size="100" maxlength="100" value="" autocomplete="off" required>
         <span class="help-block"></span>
      </div>
  </div>

我在 div 中创建了这个文件上传区域:

<div class="m-dropzone dropzone m-dropzone--primary" action="/file_upload_prodotto" id="m-dropzone-two" >
    <div class="m-dropzone__msg dz-message needsclick">
        <input type="file" name="file_ordine">
        <h3 class="m-dropzone__msg-title">Trascina o clicca su questa finestra per aggiungere i file.</h3>
    <span class="m-dropzone__msg-desc">Tieni premuto CTRL per selezionare piú file.</span>
</div>

在烧瓶中,我上传了如下文件:

@app.route('/file_upload_prodotto', methods=['GET', 'POST'])
def file_upload_prodotto():
data = request.form
print(data)
if request.method == 'POST':
    f = request.files['file']
    os.makedirs(os.path.join(app.instance_path, 'file_prodotti'), exist_ok=True)
    f.save(os.path.join(app.instance_path, 'file_prodotti', secure_filename(f.filename)))
    print(f)
return 'file uploaded successfully'

我可以毫无问题地上传文件。我真正的问题是我必须将这个文件链接到一个特定的 id,我在表单中有这个 id。我的想法是获取这个 id,然后编写一个函数来使用我上传的文件的名称更新该特定 id 的数据库。但我不知道如何获得身份证。你们能帮帮我吗?

标签: pythonhtmlflask

解决方案


因此,在您的表单中,您需要记下 id:

<div class="m-dropzone__msg dz-message needsclick">
    <input type="file" name="file_ordine">
    <input name="photo_id">
    ...

要访问烧瓶路线中的照片 ID:

...

photo_id = request.form['photo_id']

推荐阅读