5-Laravel Tinker

 Laravel Tinker: Comandos y Ejemplos Prácticos

Laravel Tinker es una potente herramienta REPL (Read-Eval-Print Loop) que te permite interactuar con tu aplicación Laravel directamente desde la terminal. Es ideal para probar rápidamente código, depurar y manipular datos.

1. Iniciar Tinker

bash
Copy
Download
php artisan tinker

2. Comandos Básicos

A. Manipulación de Modelos

ComandoDescripciónEjemplo
all()Obtener todos los registrosApp\Models\User::all()
find()Buscar por IDApp\Models\User::find(1)
where()Consulta con condiciónApp\Models\User::where('age', '>', 18)->get()
first()Primer registroApp\Models\User::first()
count()Contar registrosApp\Models\User::count()
create()Crear nuevo registroApp\Models\User::create(['name' => 'Juan', 'email' => 'juan@example.com'])
save()Guardar cambios$user = User::find(1); $user->name = 'Pedro'; $user->save()
delete()Eliminar registroUser::find(1)->delete()

B. Relaciones entre Modelos

php
Copy
Download
// Obtener posts de un usuario
$user = App\Models\User::find(1);
$user->posts;

// Obtener autor de un post
$post = App\Models\Post::first();
$post->user;

C. Ejecutar Funciones y Helpers

php
Copy
Download
// Generar hash de contraseña
bcrypt('mi-contraseña');

// Generar URL
url('/dashboard');

// Configuración
config('app.name');

3. Ejemplos Prácticos

Ejemplo 1: Crear y Actualizar Usuario

php
Copy
Download
// Crear usuario
$user = new App\Models\User;
$user->name = 'Carlos';
$user->email = 'carlos@example.com';
$user->password = bcrypt('secret');
$user->save();

// Actualizar usuario
$user = App\Models\User::find(1);
$user->name = 'Carlos Actualizado';
$user->save();

Ejemplo 2: Consultas Avanzadas

php
Copy
Download
// Usuarios con más de 10 posts
App\Models\User::has('posts', '>', 10)->get();

// Posts ordenados por fecha
App\Models\Post::orderBy('created_at', 'desc')->take(5)->get();

Ejemplo 3: Usar Factories

php
Copy
Download
// Crear 5 usuarios falsos
App\Models\User::factory()->count(5)->create();

// Crear post con usuario asociado
$user = App\Models\User::first();
$user->posts()->create(['title' => 'Nuevo post']);

4. Comandos Útiles Adicionales

ComandoDescripción
exit o quitSalir de Tinker
clearLimpiar la pantalla
dump($var)Mostrar variable con formato
\Log::info('mensaje')Escribir en logs
cache()->put('key', 'value', 60)Guardar en caché
cache()->get('key')Obtener de caché

5. Consejos de Productividad

  1. Autocompletado: Presiona Tab para autocompletar nombres de clases y métodos.

  2. Historial: Usa las flechas  y  para navegar por el historial.

  3. Multilínea: Presiona Shift + Enter para escribir código en múltiples líneas.

  4. Reutilizar variables: Asigna resultados a variables para usarlos después ($users = User::all()).


6. Salir de Tinker

php
Copy
Download
exit
// o
quit

🔹 Tinker es tu mejor aliado para:
✔ Probar consultas Eloquent rápidamente
✔ Depurar relaciones entre modelos
✔ Generar datos de prueba
✔ Experimentar con helpers de Laravel

Comentarios

Entradas más populares de este blog

8-Creación de una API RESTful con Laravel

02 -Rutas en Laravel

3-Rutas