Laravel también nos permite separar la lógica de presentación (es decir cómo vamos a «presentar» el contenido al usuario) de la lógica de nuestra aplicación (por ejemplo cómo vamos a obtener el contenido de la base de datos, validar datos de la petición, etc.) a través de la capa de «vistas» como veremos en la siguiente lección:

Repositorio

Ver el código de esta lección en GitHub

Suscríbete a nuestro boletín

Te enviaremos publicaciones con consejos útiles y múltiples recursos para que sigas aprendiendo.

Notas

Crear una vista

Las vistas generalmente se encuentran en el directorio /resources/views de la carpeta principal de nuestro proyecto. Crear una vista con Laravel es muy sencillo, simplemente necesitamos crear un archivo .php (o .blade.php como veremos en la lección siguiente) en el directorio  /views. Dentro de este archivo escribimos el HTML de la vista.

Retornar una vista

Para retornar una vista retornamos el llamado a la función helper view pasando como argumento el nombre de la vista. El nombre del archivo es relativo a la carpeta resources/views y no es necesario indicar la extensión del archivo:

public function index()
{
    return view('users');
}

Pasar datos a la vista

Podemos pasar datos a la vista mediante un arreglo asociativo, donde las llaves son el nombre de las variables que queremos pasar a la vista y el valor son los datos que queremos asociar:

$users = [
    'Joel',
    'Ellie',
    'Tess',
    //...
];

return view('users', [
    'users' => $users
]);

También podemos usar el método with encadenándolo al llamado a la función view para pasar datos a la vista en formato de array asociativo:

return view('users')->with([
    'users' => $users
]);

Con with también podemos pasar las variables de forma individual:

return view('users')
    ->with('users', $users)
    ->with('title', 'Listado de usuarios');

Si los datos que queremos pasar a la vista se encuentran dentro de variables locales podemos utilizar la función compact,  la cual acepta como argumentos los nombres de las variables y las convierte en un array asociativo:

$users = [
    ...
];

$title = 'Listado de usuarios';

return view('users', compact('users', 'title'));

Escapar código HTML

Laravel nos ofrece un helper llamado e que nos permite escapar HTML que podría ser insertado por los usuarios de nuestra aplicación, de manera de prevenir posibles ataques XSS:

<li><?php echo e($user) ?></li>

Material Relacionado

Únete a nuestra comunidad en Discord y comparte con los usuarios y autores de Styde, 100% gratis.

Únete hoy

Regístrate hoy en Styde y obtén acceso a todo nuestro contenido.

Lección anterior Controladores en Laravel Lección siguiente Blade, el Sistema de plantillas de Laravel