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
php artisan tinker2. Comandos Básicos
A. Manipulación de Modelos
| Comando | Descripción | Ejemplo |
|---|---|---|
all() | Obtener todos los registros | App\Models\User::all() |
find() | Buscar por ID | App\Models\User::find(1) |
where() | Consulta con condición | App\Models\User::where('age', '>', 18)->get() |
first() | Primer registro | App\Models\User::first() |
count() | Contar registros | App\Models\User::count() |
create() | Crear nuevo registro | App\Models\User::create(['name' => 'Juan', 'email' => 'juan@example.com']) |
save() | Guardar cambios | $user = User::find(1); $user->name = 'Pedro'; $user->save() |
delete() | Eliminar registro | User::find(1)->delete() |
B. Relaciones entre Modelos
// 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
// 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
// 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
// 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
// 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
| Comando | Descripción |
|---|---|
exit o quit | Salir de Tinker |
clear | Limpiar 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
Autocompletado: Presiona
Tabpara autocompletar nombres de clases y métodos.Historial: Usa las flechas
↑y↓para navegar por el historial.Multilínea: Presiona
Shift + Enterpara escribir código en múltiples líneas.Reutilizar variables: Asigna resultados a variables para usarlos después (
$users = User::all()).
6. Salir de Tinker
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
Publicar un comentario