РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
455 of 643 menu

Атрибут name

Атрибут name применяется к объекту FileStorage, который возвращает request.files при загрузке файла. Атрибут хранит имя поля формы, через которое был передан файл, в виде строки. Если файл не был передан, значение равно None.

В отличие от атрибута filename, который содержит оригинальное имя загруженного файла на компьютере пользователя, атрибут name отражает именно имя поля в HTML-форме, например 'avatar' или 'document'.

Синтаксис

file_storage.name

Пример

Пусть у нас есть форма, которая отправляет файл через поле с именем 'userfile'. Выведем имя поля в консоль:

from flask import Flask, request app = Flask(__name__) @app.route('/upload', methods=['POST']) def upload(): file = request.files['userfile'] print(file.name) return 'ok'

Результат выполнения кода в консоли:

"userfile"

Пример

Давайте проверим, что вернёт атрибут name, если поле с файлом отсутствует в запросе:

from flask import Flask, request app = Flask(__name__) @app.route('/upload', methods=['POST']) def upload(): file = request.files.get('userfile') if file is None: return 'no file' return file.name

Результат выполнения кода при пустом запросе:

"no file"

Пример

Давайте переберём все загруженные файлы и выведем имя поля для каждого из них:

from flask import Flask, request app = Flask(__name__) @app.route('/upload', methods=['POST']) def upload(): res = [] for key in request.files: file = request.files[key] res.append(file.name) return str(res)

Результат выполнения кода:

['userfile', 'avatar']

Смотрите также

  • класс FileStorage,
    который представляет загруженный файл
  • атрибут filename,
    который хранит оригинальное имя файла
  • метод save,
    который сохраняет файл на диск
  • атрибут content_type,
    который возвращает MIME-тип файла
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить