Spec-Zone.ru › Flask 1.1

Сервер разработки

Начиная с Flask 0.11, существует несколько встроенных способов запуска сервера разработки. Лучший из них — команда flask в командной строке, но вы также можете продолжить использовать метод Flask.run().

Командная строка

Сценарий командной строки flask (Командный интерфейс) настоятельно рекомендуется для разработки, так как он обеспечивает превосходный опыт перезагрузки благодаря тому, как он загружает приложение. Основное использование выглядит так:

$ export FLASK_APP=my_application
$ export FLASK_ENV=development
$ flask run

Это включает среду разработки, включая интерактивный отладчик и перезагрузчик, и затем запускает сервер на http://localhost:5000/.

Отдельные функции сервера могут контролироваться путем передачи дополнительных аргументов к параметру run. Например, перезагрузчик можно отключить:

$ flask run --no-reload

Примечание

До версии Flask 1.0 переменная среды FLASK_ENV не поддерживалась, и вам нужно было включить режим отладки, экспортировав FLASK_DEBUG=1. Это по-прежнему можно использовать для управления режимом отладки, но вы должны предпочесть настройку среды разработки, как показано выше.

В коде

Альтернативный способ запуска приложения — через метод Flask.run(). Это немедленно запустит локальный сервер точно так же, как и сценарий flask.

Пример:

if __name__ == '__main__':
    app.run()

Это хорошо работает в распространённом случае, но не очень подходит для разработки, поэтому с версии Flask 0.11 рекомендуется использовать метод flask. Причина в том, что из-за того, как работает механизм перезагрузки, возникают некоторые странные побочные эффекты (например, выполнение определённого кода дважды, иногда аварийный выход без сообщения или выход при возникновении синтаксической или импортной ошибки).

Тем не менее, это по-прежнему совершенно допустимый метод для вызова приложения без автоматической перезагрузки.

© 2007–2020 Pallets
Licensed under the BSD 3-clause License.
https://flask.palletsprojects.com/en/1.0.x/server/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API