Documentos de Académico
Documentos de Profesional
Documentos de Cultura
En lugar de tener @if repetidos y esparcidos en tus plantillas Blade, te recomiendo crear tus
propias directivas, de esta forma podrás modificar tu código en un único lugar y afectará a
todo (centraliza tu código siempre que puedas).
Ya sabemos que el motor de plantillas de Laravel es Blade, y que éste nos ofrece mucha
funcionalidad de base, por ejemplo el condicional @auth para saber si el usuario está
identificado, @forelse para recorrer datos, @if para comprobar ciertas condiciones etcétera.
Imagina que quieres comprobar en Blade si un usuario es admin dependiendo de su rol, para
ello normalmente haríamos lo siguiente.
@if(auth()->user()->isAdmin())
@else
@endif
Obviamente ese código es más que correcto, pero Laravel 5 nos ofrece una alternativa mucho
mejor.
<?php
Blade::if('admin', function() {
return auth()->user()->isAdmin();
});
Con el trozo de código anterior hemos generado una nueva directiva en Blade llamada
@admin, y para utilizarla simplemente debemos hacer lo siguiente.
@admin
Eres admin
@else
No eres admin
@endif
Si además necesitas pasar parámetros a tus nuevas directivas, simplemente debemos escribir
tu directiva de la siguiente forma.
<?php
return app()->environment($environment);
});
env.php
@env('local')
Entorno Local
@else
@endenv
env.blade.php