Flask
Flask — легковесный WSGI веб-фреймворк, разработанный для быстрого и легкого старта

Обзор
Flask — микрофреймворк, который предоставляет основы для веб-разработки без навязывания зависимостей или структуры проекта
Основные возможности
Минимальное ядро
Flask сохраняет ядро простым и расширяемым
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
return 'Hello, World!'
if __name__ == '__main__':
app.run()
Шаблонизатор Jinja2
Мощный шаблонизатор
from flask import render_template
@app.route('/user/<name>')
def user(name):
return render_template('user.html', name=name)
Построение URL
Генерация URL для маршрутов
from flask import url_for
url = url_for('user', name='John')
Обработка запросов
Легкий доступ к данным запроса
from flask import request
@app.route('/login', methods=['POST'])
def login():
username = request.form['username']
password = request.form['password']
return f'Logged in as {username}'
Расширения
Расширения Flask добавляют функциональность
- Flask-SQLAlchemy: ORM для базы данных
- Flask-WTF: Обработка форм
- Flask-Login: Аутентификация пользователей
- Flask-RESTful: Поддержка REST API
Установка
pip install flask
Типичные случаи использования
- REST API
- Микросервисы
- Малые и средние веб-приложения
- Прототипирование
- Изучение веб-разработки
Преимущества
- Простой и легковесный
- Гибкий и расширяемый
- Легко изучать
- Большая экосистема расширений
- Минимальный шаблонный код
Недостатки
- Требует больше решений
- Меньше встроенной функциональности
- Нужно выбирать расширения
Официальная документация
Информация о версии
- Последняя стабильная: Flask 3.0+
- Требование Python: Python 3.8+
- Лицензия: BSD