54 lines
2.3 KiB
Markdown
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). |