Metadata-Version: 2.3
Name: fastapi_sqlalchemy_toolkit
Version: 0.7.6
Summary: FastAPI SQLAlchemy Toolkit
Project-URL: Homepage, https://github.com/e-kondr01/fastapi-sqlalchemy-toolkit
Author-email: Egor Kondrashov <e.kondr01@gmail.com>
License-File: AUTHORS
License-File: LICENSE
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.11
Requires-Dist: fastapi-pagination>=0.12.12
Requires-Dist: fastapi>=0.100.0
Requires-Dist: pydantic>=2.0.0
Requires-Dist: sqlalchemy>=2.0.0
Description-Content-Type: text/markdown

# FastAPI SQLAlchemy Toolkit

---

**Документация**: [https://e-kondr01.github.io/fastapi-sqlalchemy-toolkit/ru/](https://e-kondr01.github.io/fastapi-sqlalchemy-toolkit/ru/)

---

**FastAPI SQLAlchemy Toolkit** — это библиотека для стека `FastAPI` + Async `SQLAlchemy`,
которая помогает решать следующие задачи:

- cнижение количества шаблонного, копипастного кода, который возникает при разработке
REST API и взаимодействии с СУБД через `SQLAlchemy`;

- автоматическая валидация значений на уровне БД при создании и изменении объектов через API.

## Функционал

- Методы для CRUD-операций с объектами в БД

- Фильтрация с обработкой необязательных параметров запроса (см. раздел **Фильтрация**)

- Декларативная сортировка с помощью `ordering_depends` (см. раздел **Сортировка**)

- Валидация существования внешних ключей

- Валидация уникальных ограничений

- Упрощение CRUD-действий с M2M связями

## Установка

```bash
pip install fastapi-sqlalchemy-toolkit
```

## Демонстрация

Пример использования `fastapi-sqlalchemy-toolkit` в FastAPI приложении:

[https://github.com/e-kondr01/fastapi-sqlalchemy-toolkit/tree/master/examples/app](https://github.com/e-kondr01/fastapi-sqlalchemy-toolkit/tree/master/examples/app)
