Что такое dependency в FastAPI
Python
Middle
Без компании
Что такое dependency в FastAPI
Ответы
В FastAPI dependency — это механизм для внедрения зависимостей, который позволяет повторно использовать код, управлять состоянием и упрощать тестирование. Зависимости могут быть функциями, классами или другими объектами, которые автоматически внедряются в маршруты (endpoints).
Пример:
```
from fastapi import FastAPI, Depends
app = FastAPI()
def get_db():
db = "database_connection"
yield db
@app.get("/items/")
def read_items(db: str = Depends(get_db)):
return {"db": db}
```
Ключевые моменты:
- `Depends` указывает FastAPI, что параметр зависит от другой функции/класса.
- Зависимости могут быть иерархическими (одна зависимость может зависеть от другой).
- Поддерживаются асинхронные зависимости.
- Часто используются для: аутентификации, работы с БД, валидации.
FastAPI автоматически разрешает зависимости и передает их в маршруты, что делает код чище и модульнее.