El patrón repositorio, actua como una capa intermedia entre tu aplicación y la base de datos.

La idea es encapsular el código que interactúa con la base de datos: es decir aquel que genera consultas SQL para traer datos de la base de datos hacia la aplicación o inserta, actualiza y elimina dichos datos.

Cuando usamos Laravel, este código está escrito con el ORM Eloquent o con el constructor de consultas Fluent, y suele ser muy limpio, sin embargo a medida que los requerimientos del proyecto crecen, este código también crece y lo más conveniente es separarlo a otra capa, que no sólo reducirá la cantidad de código del controlador, sino que hará nuestras consultas reusables en otros controladores y partes de nuestra app, y por otro lado también nos permitiría ejecutar pruebas (tema que veremos en otros cursos).

Dividí esta lección en 3 temas para facilitar su estudio y revisión posterior:

En esta lección, nos encargaremos de mover el código que se encarga de generar las consultas para mostrar tickets, del controlador a nueva capa llamada repositorio.

Además me tomaré unos momentos para corregir un par de bugs de la página de detalles de tickets.

Mira el código en GitHub: actual, resultadocomparación.

Regístrate en Styde

y obtén acceso inmediato a cientos de lecciones como ésta y contenido nuevo cada semana.

Ver planes

Lección anterior Subconsultas con SQL y Eloquent (selectRaw) Lección siguiente Repositorio base (repaso de clases abstractas y herencia)