Guía de comandos de Artisan

¡Hola a todos! Aquí estoy con una guía de comandos de artisan. Espero que nos sirvan a todos los artesanos de software.

A lo largo de diferentes proyectos con Laravel he ido creando este pequeño recopilatorio de comandos de artisan. Estos son los comandos que más uso de artisan en mi día a día.

Laravel - el framework PHP para artesanos de la web

¿Cómo saber la versión de Laravel instalada?

php artisan --version

Comandos de Artisan para servidor

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.

Ahora, un ejemplo de ambos sería:

php artisan serve --host=192.168.1.234 --port=7500

Con el comando anterior levantamos el server de laravel en el host 192.168.1.234 y escuchando el puerto 7500.

Acceder al server de Laravel desde vagrant

Acabando con el server, si estamos usando vagrant y queremos acceder desde fuera de vagrant, entonces necesitamos que el host sea 0.0.0.0 para que esté accesible en nuestra máquina anfitrión. En este caso el comando sería:

php artisan serve --host=0.0.0.0

Refrescar la caché de Laravel

En este caso, tenemos que ejecutar dos comandos para que sea más confiable.

Esto nos puede evitar muchos problemas en nuestro desarrollo, y saber cómo refrescar la caché de Laravel es tan importante que le he dedicado un post únicamente para esto y los problemas asociados. Puedes acceder al post desde el enlace anterior.

Los comandos para refrescar la caché de Laravel son:

php artisan config:cache
php artisan config:clear

Comandos de artisan para base de datos

A continuación vamos con los comandos de artisan para base de datos. Estos comandos serán usados principalmente para migraciones y para rellenar la base de datos. Además, también hay comandos para refrescar la base de datos, es decir, deshacer todas las migraciones y crearlas de nuevo.

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.

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:

Crear una migración

php artisan make:migration create_table_mytable

Crear una migración asociada a una nueva tabla

php artisan make:migration create_table_users --create=users

Deshacer la última migración

php artisan migrate:rollback

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.

Crear controller

php artisan make:controller MyController

Controller con CRUD

php artisan make:controller MyController --resource

Crear controller con CRUD + modelo

php artisan make:controller MyController --resource --model=MyModel

Comandos de artisan para modelos

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

php artisan make:model User -a

Resumen

Os he dejado una completa guía de comandos útiles de artisan. Además de una explicación de qué son las migraciones y los seeders que nos ofrece Laravel. Espero que os sea útiles artesanos de la web.

Comparte 🙂

Si te ha gustado el contenido de este artículo no te olvides de compartirlo ya que con eso me harías muy feliz. GRACIAS 😉

Participa 😉

Además de todo ello, si tienes dudas o puedes aportar algo con un comentario, no dudes en hacerlo. GRACIAS 😉

¿Y tú qué opinas?

Antes de participar en los comentarios, ten en cuenta que leeré personalmente cualquier cosa que escribas. Así que, por favor, mantén las formas y compórtate como una persona de bien.

  • (will not be published)

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>