Instalación de paquetes adicionales

Además de todas las utilidades que incorpora Laravel y que podemos utilizar directamente sin instalar nada más, también nos permite añadir de forma muy sencilla paquetes para complementar su funcionalidad.

Para instalar un paquete tenemos dos opciones, utilizar el comando de composer:

sudo composer require <nombre-del-paquete-a-instalar>

O editar el fichero composer.json de la raíz de nuestro proyecto, añadir el paquete en su sección "require", y por último ejecutar el comando:

sudo composer update

Esta última opción es más interesante ya que nos permitirá una mayor configuración, por ejemplo, indicar la versión del paquete o repositorio, etc.

La lista de todos los paquetes disponibles la podemos encontrar en "https://packagist.org", en la cual permite realizar búsquedas, ver el número de instalaciones de un paquete, etc.

Algunos de los paquetes más utilizados en Laravel son:

Nombre

Descripción

Url

Debugbar

Barra de depuración de Laravel

IDE Helper

Helper para IDEs

Entrust

Role permissions for Laravel 5

Ardent

Modelos auto-validados

MongoDB

Extensión para soportar MongoDB

Notification

Notificaciones

Former

Automatización de formularios

Image

Manipulación de imágenes

Stapler

Manipulación de ficheros

User Agent

Obtener info. del user agent

Sitemap

Genearción del Sitemap

Excel

Trabajar con Excel y csv

DOMPdf

Trabajar con PDF

Una vez añadido el paquete tendremos que modificar también el fichero de configuración config/app.php, en su sección providers y aliases, para que la plataforma encuentre el paquete que acabamos de añadir. Los detalles de configuración en general se encuentran indicados en la web o repositorio de GitHub de cada proyecto.

Ejemplo: instalación de paquete de notificaciones

Por ejemplo, para instalar el paquete "Notification" de edvinaskrucas tendríamos que editar el fichero composer.json y en su sección require añadir la siguiente línea:

"edvinaskrucas/notification": "5.*"

Al añadir el paquete al fichero composer.json tenemos que llevar mucho cuidado de añadir una coma como separador de los elementos de la sección require, exceptuando el último elemento de la lista, que no tendrá que llevar coma al final (sino nos dará error).

Una vez añadido ejecutamos el siguiente comando para instalar el paquete:

sudo composer update

Y después de instalar tendríamos que editar el fichero config/app.php para añadir, en la sección providers, la siguiente línea:

Krucas\Notification\NotificationServiceProvider::class,

Y en la sección aliases lo siguiente:

'Notification' => Krucas\Notification\Facades\Notification::class,

Además también tenemos que añadir el middleware al fichero app/Http/Kernel.php. En el array de $middlewareGroups añadimos la siguiente línea al grupo web, después de 'Illuminate\Session\Middleware\StartSession':

\Krucas\Notification\Middleware\NotificationMiddleware::class,

Con esto ya tendríamos instalada esta librería y podríamos empezar a utilizarla. Por ejemplo, para añadir una notificación desde un controlador podemos utilizar los siguientes métodos:

Notification::success('Success message');
Notification::error('Error message');
Notification::info('Info message');
Notification::warning('Warning message');

Importante: tenemos que acordarnos de añadir el espacio de nombres de esta clase (use Notification;) en el controlador donde la vayamos a utilizar, de lo contrario nos aparecería un error.

Y para mostrar las notificaciones, desde una vista (preferiblemente desde el layout principal), añadiríamos el siguiente código:

{!! Notification::showAll() !!}

O también podemos usar la extensión que incorpora para Blade y simplemente añadir:

@notification()

Last updated