Skip to content

Latest commit

 

History

History
37 lines (28 loc) · 1.68 KB

File metadata and controls

37 lines (28 loc) · 1.68 KB

API Generator — Trabajo Pendiente

✅ Completado

  • CRUD completo (GET, POST, PUT, DELETE)
  • Relaciones nivel 2 con $expand (multi-nivel: owner.address)
  • $select — selección de campos (compatible con $expand)
  • $orderby — ordenamiento multi-campo
  • $limit / $offset — paginación
  • Response schemas — modelos parciales como filtro de salida
  • Error response schemas — modelos de error con default values
  • Composite keys — PKs multi-columna
  • Smart mapping — array ↔ JSON string auto-serialización
  • Status codes personalizados (201, 204, etc.)
  • Sub-routers — rutas anidadas (/users/{id}/roles)
  • Tipos: String, Integer, Long, Boolean, Date, DateTime, Decimal, Float, Array

🔴 Alta Prioridad

  • PATCH — Solo hay PUT (replace). Falta PATCH (partial update)
  • Request validationrequired, minLength, maxLength, enum, pattern del OpenAPI → generar Field() de Pydantic
  • Pagination metadata — Devuelve [{...}] crudo. Debería ser {data:[], total:N, limit, offset}

🟡 Media Prioridad

  • Filtering por campos?status=active&name=John. No existe filtrado dinámico
  • Request body parcial — POST/PUT siempre usa modelo completo. Debería respetar el requestBody del OpenAPI (misma lógica que response schemas)
  • Enum types — Si OpenAPI define enum: [active, inactive], generar Python Enum

🟢 Baja Prioridad

  • Auth/Security schemesbearerAuth, apiKey del OpenAPI
  • File uploadmultipart/form-data
  • Soft delete — patrón de borrado lógico
  • Búsqueda — full-text search