from fastapi import APIRouter, Depends, HTTPException from sqlalchemy.orm import Session from crud.users import get_users, get_user from deps import get_current_active_user, get_db from schemas.users import User router = APIRouter() @router.get("/users/me/", response_model=User) async def read_users_me(current_user: User = Depends(get_current_active_user)): return current_user @router.get("/users/", response_model=list[User]) def read_users(skip: int = 0, limit: int = 100, db: Session = Depends(get_db)): users = get_users(db, skip=skip, limit=limit) return users @router.get("/users/{user_id}", response_model=User) def read_user(user_id: str, db: Session = Depends(get_db)): db_user = get_user(db, user_id=user_id) if db_user is None: raise HTTPException(status_code=404, detail="User not found") return db_user