/
imperio
/
test_repo
Обзор
Документация
Войти
/
imperio
/
test_repo
Код
Запросы
0
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
main.py
50 строк
1 KB
Sergey Bakaleynik
initial commit
29 фев 2024, 22:16
29 фев 2024, 22:16
eb11d57
Код
Авторство
О чём код?
import logging from fastapi import Depends, FastAPI, HTTPException from sqlalchemy.orm import Session from db import crud, models, schemas from db.db import SessionLocal, engine logging.basicConfig() logging.getLogger('sqlalchemy.engine').setLevel(logging.INFO) models.Base.metadata.create_all(bind=engine) app = FastAPI(debug=True) # Dependency def get_db(): db = SessionLocal() try: yield db finally: db.close() @app.post("/users/", response_model=schemas.User) def create_user(user: schemas.UserCreate, db: Session = Depends(get_db)): return crud.create_user(db=db, user=user) @app.get("/users/", response_model=list[schemas.User]) def read_users(skip: int = 0, limit: int = 100, db: Session = Depends(get_db)): users = crud.get_users(db, skip=skip, limit=limit) return users @app.get("/users/{user_id}", response_model=schemas.User) def read_user(user_id: int, db: Session = Depends(get_db)): db_user = crud.get_user(db, user_id=user_id) if db_user is None: raise HTTPException(status_code=404, detail="User not found") return db_user @app.get("/tree", response_model=list) def get_users_tree(db: Session = Depends(get_db)): result = crud.get_user_tree(db) if result is None: raise HTTPException(status_code=404, detail="User not found") return result