prueba_proyecto_taller/docs/persona_changes.md
2026-06-04 22:20:20 -03:00

54 lines
2.3 KiB
Markdown

# Cambios: CRUD `persona`
Resumen
- Normalización completa del CRUD para la entidad `persona`.
- Tabla: `persona` con columnas `id`, `nombre`, `apellido`, `dni`, `created_at`, `updated_at`, `deleted_at`.
- Se habilitaron `timestamps` y `soft deletes` (restaurar registros).
Archivos modificados
- app/Models/Persona.php — Añade `SoftDeletes`, `fillable` y timestamps.
- app/Http/Controllers/PersonaController.php — CRUD completo + método `restaurar()`.
- routes/web.php — `Route::resource('persona', PersonaController::class)` y ruta para restaurar.
- resources/views/persona/* — Formularios `create`, `edit`, `show`, list (`index`) con botones Restaurar y columnas de timestamps.
- database/migrations/* — Migraciones para renombrar columnas y agregar `created_at`, `updated_at`, `deleted_at`.
Migraciones aplicadas (ejemplos)
- database/migrations/2026_06_04_000000_update_persona_table.php — renombró `rol`→`apellido`, `direccion`→`dni`.
- database/migrations/2026_06_04_010000_add_timestamps_and_deleted_at_to_persona.php — agregó timestamps y soft deletes.
Esquema final de la tabla `persona`
- `id` INT PK auto-increment
- `nombre` VARCHAR
- `apellido` VARCHAR
- `dni` VARCHAR
- `created_at` TIMESTAMP NULL
- `updated_at` TIMESTAMP NULL
- `deleted_at` TIMESTAMP NULL (soft delete)
Cómo verificar localmente
1. Ejecutar migraciones si no están aplicadas:
```bash
cd c:\wamp64\www\mi_proyecto
php artisan migrate
```
2. Probar la UI:
- Abrir `http://127.0.0.1:8000/persona`.
- Crear, editar, eliminar (soft delete) y restaurar registros.
- Verificar que las columnas `Creado`, `Actualizado`, `Eliminado` se actualicen.
Comandos para comprobar en DB
```sql
SELECT id, nombre, apellido, dni, created_at, updated_at, deleted_at FROM persona;
```
Notas importantes
- El botón `Restaurar` llama a la ruta `persona.restaurar` y ejecuta `restore()` sobre el modelo con `withTrashed()`.
- Se recomienda ejecutar `git push` desde tu entorno con credenciales configuradas para sincronizar los cambios remotos.
Próximos pasos recomendados
- Añadir pruebas automáticas (PHPUnit) para CRUD + restaurar.
- Hacer `git push` al repositorio remoto cuando quieras publicar los cambios.
Si quieres, ahora hago el `git push` por ti (necesitaré que confirmes destino y credenciales).