Comparte en Facebook Twitter Google+

artisan-signatures-en-laravel-5-1

Artisan provee una serie de comandos muy útiles al momento de desarrollar aplicaciones con Laravel, puedes crear  elementos como controladores, middelwares, seeders, modelos, etc. y puedes interactuar con ellos al ejecutar una migración, solicitar información de las rutas del sistema etc.

Hoy vamos a ver un poco mas allá de estas funcionalidades y trataremos de construir nuestro propio comando accesible desde la consola. Tranquilos! es mucho mas fácil de lo que parece.

Tal vez les haya ocurrido que en algún proyecto multilenguaje durante la etapa de desarrollo exista la necesidad de cambiar constantemente la configuración manualmente para comprobar que todo vaya bien, y no sé ustedes, pero me parece muy tedioso editar el archivo de configuración a cada momento. Vamos a darle una solución más práctica.

Creando un nuevo comando de artisan 

Para ello, usamos “artisan”

Con esto habrás creado tu nuevo comando y puedes verlos en

app\Console\Commands\SetLocale.php

Signature

Para cambiar el nombre con el cual vamos a ejecutar este comando en la consola editamos lo siguiente dentro del archivo SetLocale.php usando el atributo “signature”, es en este lugar donde vamos a definir la forma en como el usuario podrá ejecutar el comando enviando los parámetros requeridos para cada tarea.

Para ver el comando disponible en la consola debemos registrarlo en app\Console\kernel.php

Ahora si desde la consola ejecutamos

Podemos ver el nuevo comando listado

artisan-commands-list

Perfecto, vamos a editar un par de cosas, primero necesitamos darle una descripción un poco mas completa. Dentro de SetLocale.php editamos el atributo “description”

Y agregamos al método handle() las instrucciones que deseamos ejecutar con el comando

En este caso el método recibe como parámetro el valor del nuevo lenguaje con

Para recibir este parámetro basta con editar el signature indicando el nombre del mismo de la siguiente manera

vamos a ejecutar el comando a ver que sucede

Puedes editar el valor “en” por cualquiera de los lenguajes disponibles en tu aplicación.

Para verificar que todo funcione correctamente solo debes abrir el archivo config\app.php y podrás ver que ha cambiado el valor de la llave “locale”

Recuerda que puedes dejar cualquier duda en la sección de comentarios

Lecturas recomendadas

Aprende PHP, Laravel y más por sólo 999 al mes: ver planes.

Lección anterior Manejo de assets con Elixir y Gulp en Laravel 5.1 Lección siguiente Cómo crear y usar los Middleware en Laravel 5.1