El Artisan CLI, o línea de comandos, es otro aspecto vital de Laravel. Con él, puedes crear o modificar cualquier parte de Laravel desde la línea de comandos sin tener que navegar por carpetas y archivos.
Con Artisan, puedes incluso interactuar con tu base de datos directamente desde tu línea de comandos usando Laravel Tinker – todo sin instalar un cliente de base de datos.
Para conocer el listado completo de los comandos disponibles ejecutamos en consola, en el directorio raíz
e inmediatamente veremos en la misma consola:
Para saber de qué trata y cuáles son las opciones que se tiene disponibles con cada comando podemos usar help:
php artisan help nombre-comando
o de esta manera:
php artisan nombre-comando -h
y nos mostrará: la forma de usar el comando, los argumentos que puede recibir, las opciones que podemos agregar y una descripción del comando. Por ejemplo, para php artisan migrate -h nos muestra:
Así nos dice que es el comando para correr las migraciones y entre las opciones con que cuenta está poder indicar cuál es la base de datos por ejemplo php artisan migrate –database=tests .
Una de las grandes ventajas de esta herramienta es que tiene un conjunto de comandos dedicado a generadores, es decir, que nos permiten crear elementos como controladores, middleware, seeders, modelos, entre otros, los cuales son los que están bajo la categoría make:
Cada uno de esos generadores tiene sus propias opciones, así que puedes revisarlo con el comando help. Por ejemplo, para crear un controlador sin ningún método usamos la opción plain:
Empezaremos con cómo se levantaría el server de Laravel con Artisan de la manera más básica:
php artisan serve
Con este comando tendríamos el servidor levantado en localhost y usando el puerto 8000 por defecto. Muy bien, pero ahora quiero modificar la IP y el puerto, ¿cómo lo hago?
Modificar la IP: para modificar el host usamos el parámetro host de tal manera. –host=123.123.123.123 , siendo 123.123.123.123 la IP deseada
Modificar el puerto: para modificar el puerto de escucha usamos el parámetro –port de la siguiente manera. –port=1234 , siendo 1234 el puerto que escuchará nuestras peticiones.
es tan importante que le he dedicado un post únicamente para esto y los problemas asociados. Puedes acceder al post desde el enlace anterior.
This link can't be embedded.
Los comandos para refrescar la caché de Laravel son:
php artisan config:cache
php artisan config:clear
Comandos de artisan
Para ver el listado completo de rutas:
php artisan route:list
Comandos de artisan para base de datos
Las migraciones en laravel son lo más parecido a un sistema de control de versiones para una base de datos. Por lo tanto, éstas permiten llevar un control sobre los cambios realizados al esquema de base de datos, y además, brindan un mecanismo para la instalación de los cambios de manera automatizada.
This link can't be embedded.
Las migraciones son archivos que se encuentran en la ruta database/migrations/ de nuestro proyecto Laravel.
Vamos con los comandos de artisan para bases de datos:
Deshacer todas las migraciones / limpiar la base de datos
php artisan migrate:reset
Refrescar la base de datos (Deshacer migraciones y ejecutarlas de nuevo)
php artisan migrate:refresh
Borrar la base de datos y ejecutar las migraciones de nuevo
php artisan migrate:fresh --seed
Seeders
Ya tenemos los comandos de migraciones, así que ahora nos toca ir a por los seeders.
Dentro de la base de datos, Laravel también nos ofrece los seeders. Los seeders son archivos que nos van a permitir poblar nuestra base de datos y además nos ayudan a no tener que perder el tiempo escribiendo de forma manual todos los datos.
Un Seeder se ubica en la carpeta database/seeds/ de nuestro proyecto de Laravel.
Crear un seeder
php artisan make:seeder seederName
Ejecutar los seeder
php artisan db:seed
Ejecutar una clase seeder específica
php artisan db:seed --class=UserSeeder
Refrescar la base de datos (Deshacer migraciones y ejecutarlas de nuevo) pero añadiendo los seeders
php artisan migrate:refresh --seed
Borrar la base de datos y ejecutar las migraciones de 0, añadiendo los seeders
php artisan migrate:fresh --seed
Comandos de artisan para controladores
Ahora vamos a por los comandos de artisan para controladores. En este caso, lo más común ha sido, crear el controller básico, o crear el controller con el crud. Aunque lo he usado menos, también se puede crear el modelo.
Por último, también hay comandos para gestionar los modelos. Estos comandos nos van a ayudar a crear modelos y gestionar la migración, y además también para crear los seeders.
Crear modelo
php artisan make:model User
Modelo y su controller con crud
php artisan make:model User -mcr
Crear modelo y su controller con crud además de la migración en base de datos
php artisan make:model User -mcrs
Crear modelo y su controller. Además del factory y una migración con el seeder.
php artisan make:model User-mfsc
Crearlo modelo y con todo de una vez (con #migración, #seeder, #factory y #controlador resource)
php artisan make:model User -a
php artisan make:model Alumno --all
php artisan make:model Alumno
Como los diferentes comandos, tenemos una serie de opciones en su creación que podemos ver con la opción -h