Как используется dependency в FastAPI

Python Middle Без компании
Как используется dependency в FastAPI
Ответы
FastAPI использует `Depends` для внедрения зависимостей (Dependency Injection). Это позволяет декларативно описывать зависимости, которые FastAPI автоматически разрешает и передает в маршруты. **Пример:** ``` from fastapi import FastAPI, Depends app = FastAPI() def get_db(): db = "database_connection" try: yield db finally: print("Closing connection") @app.get("/items/") async def read_items(db: str = Depends(get_db)): return {"db": db} ``` **Ключевые моменты:** - `Depends` можно использовать для функций, классов или других зависимостей. - Поддерживает `async` и синхронные зависимости. - Можно вкладывать зависимости друг в друга. - Автоматически обрабатывает контекстные менеджеры (через `yield`). - Используется для аутентификации, БД, валидации и других повторяющихся задач. Это делает код чище и тестируемым.