Flask Форма не загружает файл - PullRequest
0 голосов
/ 12 марта 2020

Пытался загрузить и сохранить файл, загруженный через Flask. Постоянно получаю ошибку 400, и файл никогда не сохраняется.

Мой файл маршрутов имеет следующий код:

@app.route('/handle_date', methods=['GET', 'POST'])
def handle_data():

    file = request.files['file']

    # storing uploaded file so that oce_test.py can access it
    filename = secure_filename(file.filename)
    file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))


    return redirect('/index')

Моя форма выглядит следующим образом:

<html>
    <head>
        <title>OCE Demo</title>
    </head>
    <body>
        <form action="{{ url_for('handle_data') }}" method="POST">
            <h2>OCE Input Form</h2>
            <label for="input">Input Selection </label>
                <select name="input">
                    <option value="price">24 hr Prices</option>
                    <option value="dispatch">24 hr Dispatch</option>
                </select>

            <br>
            <br>
            <br>

            <label>Select a file:</label>
            <input type="file" name="file"><br><br>
            <input type="submit">
        </form>
    </body>
</html>

Моя След выглядит следующим образом:

enter image description here

1 Ответ

1 голос
/ 12 марта 2020

Ваша форма отсутствует enctype="multipart/form-data". Это должно быть

<form action="{{ url_for('handle_data') }}" method="POST" enctype="multipart/form-data">
...