fastapi-router-py

# Créer des routeurs FastAPI avec des opérations CRUD, des dépendances d'authentification et des modèles de réponse appropriés. À utiliser lors de la création de points de terminaison API REST, de la création de nouvelles routes, de l'implémentation d'opérations CRUD ou de l'ajout de points de terminaison authentifiés dans les applications FastAPI.

npx skills add https://github.com/microsoft/skills --skill fastapi-router-py

Routeur FastAPI

Créez des routeurs FastAPI en suivant les modèles établis avec une authentification appropriée, des modèles de réponse et des codes de statut HTTP.

Démarrage rapide

Copiez le modèle depuis assets/template.py et remplacez les espaces réservés :

  • {{ResourceName}} → nom en PascalCase (par ex., Project)
  • {{resource_name}} → nom en snake_case (par ex., project)
  • {{resource_plural}} → forme plurielle (par ex., projects)

Modèles d'authentification

# Authentification optionnelle - retourne None si non authentifié
current_user: Optional[User] = Depends(get_current_user)

# Authentification requise - lève 401 si non authentifié
current_user: User = Depends(get_current_user_required)

Modèles de réponse

@router.get("/items/{item_id}", response_model=Item)
async def get_item(item_id: str) -> Item:
    ...

@router.get("/items", response_model=list[Item])
async def list_items() -> list[Item]:
    ...

Codes de statut HTTP

@router.post("/items", status_code=status.HTTP_201_CREATED)
@router.delete("/items/{id}", status_code=status.HTTP_204_NO_CONTENT)

Étapes d'intégration

  1. Créez le routeur dans src/backend/app/routers/
  2. Montez-le dans src/backend/app/main.py
  3. Créez les modèles Pydantic correspondants
  4. Créez la couche de service si nécessaire
  5. Ajoutez les fonctions API frontale