Dejé de escribir esto para laravel a favor del paquete Laracasts que lo maneja todo por ti. Es realmente fácil de usar y mantiene limpio su código. Incluso hay un laracast que cubre cómo usarlo. Todo lo que tienes que hacer:
Tire del paquete a través de Composer.
"require": {
"laracasts/flash": "~1.0"
}
Incluya el proveedor de servicios en app / config / app.php.
'providers' => [
'Laracasts\Flash\FlashServiceProvider'
];
Agregue un alias de fachada a este mismo archivo en la parte inferior:
'aliases' => [
'Flash' => 'Laracasts\Flash\Flash'
];
Tire del HTML a la vista:
@include('flash::message')
Hay un botón de cierre a la derecha del mensaje. Esto depende de jQuery, así que asegúrese de agregarlo antes de su rutina de arranque.
cambios opcionales:
Si no está utilizando bootstrap o desea omitir la inclusión del mensaje flash y escribir el código usted mismo:
@if (Session::has('flash_notification.message'))
<div class="{{ Session::get('flash_notification.level') }}">
{{ Session::get('flash_notification.message') }}
</div>
@endif
Si desea ver el HTML extraído @include('flash::message')
, puede encontrarlo en vendor/laracasts/flash/src/views/message.blade.php
.
Si necesita modificar los parciales, haga lo siguiente:
php artisan view:publish laracasts/flash
Las dos vistas de paquete ahora se ubicarán en el directorio `app / views / packages / laracasts / flash / '.
s
y agregueuse
donde sea necesario. Aparte de eso, debería funcionar.