• en
  • Language: ru
  • Documentation version: 1.1.x

Предисловие

Прочитайте это, прежде чем начать работу с Flask. Надеюсь, это ответит на некоторые вопросы о назначении и целях проекта, а также о том, когда вам следует или не следует его использовать.

Что означает слово «микро»?

«Микро» не означает, что все ваше веб-приложение должно умещаться в одном файле Python (хотя это, конечно, возможно), и не означает, что Flask лишен функциональности. Микро» в микрофреймворке означает, что Flask стремится сохранить ядро простым, но расширяемым. Flask не будет принимать за вас множество решений, например, какую базу данных использовать. Те решения, которые он принимает, например, какой шаблонизатор использовать, легко изменить. Все остальное зависит от вас, так что Flask может быть всем, что вам нужно, и ничем, что вам не нужно.

По умолчанию Flask не включает в себя слой абстракции базы данных, валидацию форм или что-то еще, для чего уже существуют различные библиотеки. Вместо этого Flask поддерживает расширения для добавления такой функциональности в ваше приложение, как если бы она была реализована в самом Flask. Многочисленные расширения обеспечивают интеграцию с базами данных, проверку форм, обработку загрузок, различные технологии открытой аутентификации и многое другое. Flask может быть «микро», но он готов к производственному использованию для различных нужд.

Конфигурация и условные обозначения

Flask имеет множество значений конфигурации, с разумными значениями по умолчанию, и несколько условностей при начале работы. По соглашению, шаблоны и статические файлы хранятся в подкаталогах в дереве исходных текстов Python приложения с именами templates и static соответственно. Хотя это можно изменить, обычно это не требуется, особенно в начале работы.

Выращивание с помощью Flask

Как только вы запустите Flask, вы найдете множество расширений, доступных в сообществе, чтобы интегрировать ваш проект в производство. Основная команда Flask рассматривает расширения и следит за тем, чтобы одобренные расширения не выходили из строя в будущих релизах.

По мере роста вашей кодовой базы вы можете свободно принимать дизайнерские решения, подходящие для вашего проекта. Flask будет продолжать обеспечивать очень простой клеевой слой к лучшему, что может предложить Python. Вы можете реализовать продвинутые паттерны в SQLAlchemy или другом инструменте для работы с базами данных, внедрить нереляционную персистентность данных, если это необходимо, и использовать преимущества инструментов, не зависящих от фреймворка, созданных для WSGI, веб-интерфейса Python.

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

Перейдите к Установка, Быстрый старт или Предисловие для опытных программистов.