¿Por qué aparece SQLite por defecto?-- namespace
¿Por qué aparece SQLite por defecto?
Laravel, al crear un proyecto nuevo, no configura automáticamente una base de datos MySQL o PostgreSQL. El archivo .env que viene por defecto tiene estas líneas:
DB_CONNECTION=sqlite # DB_HOST=127.0.0.1 # DB_PORT=3306 # DB_DATABASE=laravel # DB_USERNAME=root # DB_PASSWORD=
Por tanto, si no has modificado esas variables antes de instalar Jetstream, Laravel asume que quieres usar SQLite (un archivo local .sqlite en la carpeta database/).
¿Qué significa la pregunta que te hace?
“New database migrations were added. Would you like to re-run your migrations? (yes/no)”
Jetstream ha añadido nuevas migraciones (tablas de usuarios, sesiones, equipos, etc.) y te pregunta si quieres ejecutarlas ahora mismo.
Si respondes
yes→ las ejecutará con la conexión de base de datos que tengas configurada en ese momento.Si respondes
no→ no las ejecutará, y luego tendrás que hacerlo manualmente conphp artisan migrate.
¿Qué deberías hacer?
Depende de qué base de datos quieras usar en tu proyecto:
Opción A) Quieres usar MySQL / MariaDB / PostgreSQL (recomendado para producción)
Cancela la instalación de Jetstream (presiona
Ctrl+Csi está esperando tu respuesta).Configura tu base de datos en el archivo
.env. Por ejemplo, para MySQL:DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=inertia-example # el nombre que le diste DB_USERNAME=root DB_PASSWORD=tu_contraseña
Crea la base de datos (si no la tienes) con tu gestor favorito o desde la terminal:
mysql -u root -p -e "CREATE DATABASE inertia-example;"
Vuelve a ejecutar el comando de instalación de Jetstream:
php artisan jetstream:install inertia
Esta vez, al llegar a la pregunta, ya tendrás MySQL configurado, y la migración se ejecutará sobre tu base de datos MySQL. Responderás
yessin problemas.
Opción B) Quieres usar SQLite (para desarrollo rápido)
Si no te importa usar SQLite, simplemente:
Asegúrate de que el archivo
database/database.sqliteexista (si no, créalo vacío).Responde
yesa la pregunta y Jetstream ejecutará las migraciones en ese archivo.
¿Qué pasa si respondo "no" y luego quiero migrar?
Si respondiste no, no pasa nada. Solo tendrás que ejecutar las migraciones manualmente después de configurar tu base de datos:
php artisan migrate
Eso creará todas las tablas necesarias en la base de datos que tengas configurada en ese momento.
Resumen rápido
| Tu situación | Acción recomendada |
|---|---|
Ya configuraste MySQL/PostgreSQL en .env | Responde yes sin miedo. |
No has tocado .env y quieres usar MySQL | Cancela, configura .env, crea la BD, y vuelve a instalar Jetstream. |
| Quieres usar SQLite | Responde yes y listo (o no y luego php artisan migrate). |
Consejo final
En el tutorial que te compartí, yo asumo que usas MySQL y te indico que crees la base de datos y configures .env antes de instalar Jetstream. Si saltaste ese paso, ahora ya sabes cómo corregirlo.
Si ya respondiste yes y las migraciones se ejecutaron en SQLite, pero quieres cambiarlo a MySQL, no te preocupes: puedes hacer php artisan migrate:refresh después de cambiar .env para recrear las tablas en el nuevo motor.
¡Ánimo, que ya casi lo tienes! Si te surge otra duda, aquí estoy. 🚀
Solución paso a paso
1. Crea el controlador (si no existe)
php artisan make:controller ExampleController
Esto generará el archivo en app/Http/Controllers/ExampleController.php con el namespace App\Http\Controllers.
2. Verifica que tu ruta esté bien escrita
En routes/web.php, asegúrate de tener:
use App\Http\Controllers\ExampleController; Route::get('/example', [ExampleController::class, 'index'])->name('example');
otra recomendacion ::El error es claro: no has importado la clase Inertia en tu controlador. Laravel no sabe qué es Inertia::render() porque no has declarado el use correspondiente.
✅ Solución
Abre tu controlador app/Http/Controllers/ExampleController.php y agrega la importación al inicio:
<?php namespace App\Http\Controllers; use Inertia\Inertia; // <--- ¡Esta línea es obligatoria! class ExampleController extends Controller { public function index() { return Inertia::render('ExampleInertia'); } }
vc
Verifica que el componente Vue exista
Si después de agregar el use aparece otro error similar a "Page not found" o "Unable to resolve component", significa que no has creado el archivo resources/js/Pages/ExampleInertia.vue. Créalo con:
<template> <h1>Hello World desde Inertia</h1> </template> <script setup> // Aquí puede ir lógica si la necesitas </script>
🔄 Recarga el servidor
Si usas php artisan serve, reinícialo o espera a que detecte el cambio (si APP_DEBUG=true suele refrescar automáticamente).
📦 Asegura que el paquete de Inertia esté instalado
Si por algún motivo no has instalado el paquete de Inertia para Laravel, ejecuta:
composer require inertiajs/inertia-laravelPero si instalaste Jetstream con Inertia, ya debería estar incluido.
¡Con eso debería funcionar! 🚀 El error Class "App\Http\Controllers\Inertia" not found desaparecerá y verás tu "Hello World".
Comentarios
Publicar un comentario