Header Ads Widget

Ticker

6/recent/ticker-posts

Mensajes Flash en Laravel

 

Todos sabemos qué son los mensajes flash. Casi todos los sitios web modernos los utilizan de una forma u otra. Un mensaje flash se utiliza para comunicar al usuario del sitio web o aplicación que se ha producido un evento. Muchas veces verá una redirección con un mensaje flashEsto puede ser algo que el usuario pretendía hacer, o podría ser algo meramente informativo. La clave para recordar acerca de los mensajes flash es que no son persistentes. En otras palabras, se utilizan en un tipo de escenario único. Los marcos frontales modernos tienen todo tipo de estilos integrados en las clases para trabajar con mensajes Flash. En este episodio, veremos el uso de Laravel para alimentar algunos mensajes flash al estilo de Twitter Bootstrap. ¡Adelante!

Contenedor Flash

Primero, debemos considerar dónde vamos a mostrar los mensajes flash. Por lo general, puede colocar un div como marcador de posición directamente en una página maestra. Por lo tanto, todas sus vistas reales extenderán la página maestra y tendrán acceso al div para que los mensajes flash puedan mostrarse fácilmente en cualquier lugar de su aplicación. Lea sobre Blade en Laravel si necesita un repaso sobre cómo configurar su página maestra.

Esta será nuestra página maestra que contendrá nuestro contenedor:
default.blade.php

Basado en acciones del usuario

Los mensajes flash se generan normalmente en función de las acciones que realiza el usuario. También se les puede enviar un mensaje flash para consultar al usuario si está seguro de que desea realizar una acción. Piensa en un escenario como cuando tus amigos te desafían a probar la salsa picante más picante del mundo mientras estás comiendo alitas de pollo con ellos. Tu buen amigo podría intervenir y darte un mensaje rápido como, “¡Espera amigo! ¿Estás seguro de que quieres inutilizar tu boca durante una semana? Entiendes la idea.

Aquí simplemente crearemos una aplicación ficticia que tiene cuatro acciones simples que puede realizar un usuario. Pueden iniciar sesión, editar, cancelar y eliminar su cuenta. Cada vez que el usuario realiza una acción, simplemente será redirigido a la página de inicio. De hecho, a los efectos de esta demostración, la vista de inicio es la * única * vista en toda la aplicación. Esto le dará una idea de cómo funcionan realmente los mensajes flash.

Sesión :: flash ()

Hay un par de formas de hacer esto, pero el primer método utilizará Session :: flash () . Ok, aquí está nuestra pequeña aplicación hasta ahora:
route.php

entonces que tenemos aqui? Bueno, cada ruta es un ejemplo de cómo completar la acción que infiere el nombre de la ruta, establecer un mensaje flash y luego redirigir al usuario a la página de inicio.

Todas las vistas heredan de default.blade.php

Así que tenemos nuestra página maestra configurada, que incluye algunos enlaces a redes externas de entrega de contenido para facilitar el acceso a las clases de Twitter bootstrap que usaremos en este episodio. También incluimos una cláusula if para verificar si hay un mensaje flash presente, de modo que solo mostraremos el mensaje una vez. ¿Cuándo aparecerá el mensaje flash? El mensaje flash se mostrará solo durante la redirección inicial a la página de inicio. Una vez que comience a recargar la página de inicio, la sesión flash se borrará y no verá ningún mensaje. Aquí está nuestra vista de inicio:

home.blade.php

Entonces, lo que podemos ver aquí es que se home.blade.phpextiende layouts.defaultlayouts.defaulten realidad se refiere al nombre de archivo de default.blade.php, así que asegúrese de tenerlo en cuenta. En esta vista de inicio, solo hacemos uso de algunos mecanismos de enlace simples para hacer clic fácilmente entre la página de inicio y las diversas acciones del usuario para iniciar sesión, editar, cancelar y eliminar. Lo que debería suceder entonces en esta aplicación es lo siguiente. Cada vez que el usuario hace clic en cualquiera de los elementos relacionados con la acción, se configurará el flash, y cuando Laravel redirija al usuario a la página de inicio, lo hará con el mensaje flash que se mostrará en la carga de la página inicial. Simplemente haciendo clic en el enlace Ir a inicio actualizará la página y borrará cualquier mensaje flash. Probémoslo:

Iniciando sesión

http://localhost/laratut/public/login
éxito del mensaje flash de laravel

Editar perfil

http://localhost/laratut/public/edit
información del mensaje flash de laravel

Cancelar membresía

http://localhost/laratut/public/cancel
advertencia de mensaje flash de laravel

Borrar cuenta

http://localhost/laratut/public/delete
laravel flash mensaje peligro

¡Frio! Ahora, cada vez que haga clic en los enlaces para ir a casa, la página de inicio se cargará y no habrá ningún mensaje flash. Esto se debe a que el mensaje flash es solo para la carga de la página inicial.

Mensajes flash mediante encadenamiento

En la verdadera forma de Laravel, hay más de una forma de lograr algo. En el caso de los mensajes flash, vimos que al usar Session :: flash () , pudimos poner un mensaje en la sesión flash para que pudiéramos acceder a nuestras vistas de forma única. Entonces podríamos hacer uso de Session :: has () y Session :: get () para crear nuestros mensajes. Si prefiere el estilo de sintaxis de encadenamiento de métodos, puede crear fácilmente sus Sesiones de mensajes Flash usando -> con () así:

Probar este nuevo método de aplicar nuestros datos flash tiene el mismo efecto. Además, cuando visitamos o recargamos la página de inicio, podemos ver que no se muestra ningún mensaje, tal como pretendíamos.

mensaje flash de laravel con

La comida para llevar intermitente

¿Tiene que utilizar mensajes Flash en sus aplicaciones? Por supuesto que no, pero son una forma realmente agradable de orientar al usuario durante la navegación de su sitio web o aplicación. Personalmente, soy un gran fanático del uso de mensajes Flash. Me confundieron al principio, pero ahora que hemos aplastado este tutorial juntos, ¡trabajar con mensajes Flash en Laravel no podría ser más fácil!

Publicar un comentario

0 Comentarios