Artisan es la interfaz de línea de comandos de Laravel, proporciona un conjunto de comandos que permite crear funcionalidades como Migraciones, Seeders, factories, Models, Controllers y muchos más, así agilizar el proceso de desarrollo de software.
“Daremos por hecho que ya tienes instalado un proyecto con Laravel, como también tu entorno de trabajo tanto en herramientas como lenguajes de programación.”
Para conocer la línea de comandos proporcionada por Artisan, abrimos la terminal en Linux o Mac, o el símbolo del sistema (CMD) en Windows, en el directorio de nuestro proyecto.
Artisan proporciona un listado de comandos habilitados, para conocer todos estos comandos ejecutamos la siguiente línea de comandos:
php artisan list
Artisan cuenta con el comando “serve” para iniciar un servidor de desarrollo local. Permitiéndote probar tu aplicación web.
php artisan serve
Artisan te proporciona el comando “help” de ayuda para ver la sintaxis, opciones y estructura de cada comando.
php artisan help migrate
Artisan te permite verificar la versión actual de laravel que se está utilizando en tu proyecto:
php artisan --version
Artisan cuenta con un comando para ver el listado de las rutas definidas en la aplicación.
php artisan route:list
Artisan provee de comandos que facilitan limpiar nuestra caché de la aplicación, estos comando son:
php artisan cache:clear php artisan view:clear php artisan route:cache php artisan config:cache
Con Artisan cuenta con un comando para iniciar la consola de Tinker.
php artisan tinker
Con artisan podemos crear la estructura de una migración básica con el siguiente comando:
php artisan make:migration create_persons_table
También, podemos crear el seeder y el factory para llenar datos de prueba en nuestras tablas.
php artisan make:seeder PersonSeeder
php artisan make:factory PersonFactory
Artisan te ofrece un conjunto de comandos para ejecutar las migraciones y los seeder, Primeramente veremos el comando para ejecutar las migraciones.
php artisan migrate
También existen variaciones de este comando. Por ejemplo, para ver el estado de las migraciones.
php artisan migrate:status
El comando bastante utilizado es “fresh”, este comando permite eliminar toda la estructura de las migraciones ejecutadas anteriormente (datos, tablas y relaciones) para volver a generar las migraciones desde cero.
php artisan migrate:fresh
Otro comando similar es “Refresh”, este comando también elimina todas las migraciones existentes, pero en lugar de ejecutar todas las migraciones nuevamente (No borra las tablas de la base de datos) solo hace un Rollback y luego un Migrate.
php artisan migrate:refresh
El comando “Rollback” deshace la última migración ejecutada.
php artisan migrate:rollback
El comando “Reset” deshace todas las migraciones de la base de datos.
php artisan migrate:reset
Una vez ejecutado las migraciones, para cargar los datos de pruebas con los Seeder ejecutamos el siguiente comando:
php artisan db:seed
Las migraciones y los seeders se pueden ejecutar conjuntamente en un solo comando:
php artisan migrate –seed
Artisan te permite crear los modelos con una estructura básica para comenzar con el desarrollo.
php artisan make:model Person
Al crear los modelos también existen variaciones de este comando, Por ejemplo, para crear el modelo con la migraciones, los seeders, los factories o los controladores.
php artisan make:model Person -m php artisan make:model Person --seed php artisan make:model Person --factory php artisan make:model Person --controller
Los Controladores también se pueden generar con la línea de comandos de Artisan, para crear un controlador utilizamos el siguiente comando:
php artisan make:controller PersonController
El comando “resource” permite crear un controlador con todos los métodos de un CRUD
php artisan make:controller PersonController --resource
El comando “api” permite crear un controlador con todos los métodos de una API REST.
php artisan make:controller PersonController --api
Estos son algunos ejemplos de los muchos comandos disponibles en Artisan. Puedes explorar más comandos y sus opciones en la documentación oficial de Laravel.