¿Consultas en Controlador o Modelo?

  • Autor Autor uncoderbyte
  • Fecha de inicio Fecha de inicio
U

uncoderbyte

Gamma
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Hola!,
Todos los que trabajando con MVC siempre (o casi) realizamos las consultas a la BD en los Modelos, pero Laravel permite realizar de manera tan simple las consultas que uno se ve tentado a relaizarlas en los controladores. Y, al menos en mis proyectos, utilizo los Modelos para algun retoque en las tablas de la BD.
¿Hay alguna manera correcta de hacer estos con buenas practicas?. He leído que muchos se están pasando a la arquitectura DDD ahora.
 
Hola @uncoderbyte ! Interesante consulta 🙂

Yo creo que DDD es algo sumamente interesante para investigar.

No conozco tanto de Laravel (uso siempre Symfony) pero lo que yo te diría es que no todas las consultas tienen sentido en los modelos.

Por ejemplo, si tienes que hacer un listado de alguna tabla con filtros y demás, lo más probable es que el controlador sea el mejor lugar para armar la consulta.

A lo sumo, si vas a utilizarla en varios lugares puedes crear una clase auxiliar (Lo que en Symfony se conoce como "servicio") para encapsular esa lógica...

¿Tienes algún ejemplo específico sobre el que quieras ayuda?
 
buenos dias, yo utlizo Eloquent en laravel desde los controladores, todos los videos, tutoriales o libros que he visto meten las consutas en los controladores
 
Todo el MVC sea lo normal o HMVC se creo de modo que las vistas se cargaran en controladores, pero obtendrán los datos a partir de modelos, las optimizaciones que los diferentes frameworks realizan se producen en el mismo orden de concepto, y aun si existen o no helpers en el framework que se utilice, estos se surtirán de datos a partir de los modelos si es el caso, lo cual no significa que una consulta no pueda realizarse desde una vista o peor caso desde un controlador tirando por la borda todas implementaciones de seguridad y optimizaciones, cuando veo a alguien haciendo un tutorial y colocando consultas en los controladores o vistas se que clase de programador es y eso no significa que no sea bueno si no que es desordenado y carente de los conceptos de seguridad los cuales ignora según el entorno que utilice al realizar tales prácticas, que algo se pueda hacer no significa que sea lo apropiado( en términos de eficiencia), lo seguro o lo correcto.
 
Todo el MVC sea lo normal o HMVC se creo de modo que las vistas se cargaran en controladores, pero obtendrán los datos a partir de modelos, las optimizaciones que los diferentes frameworks realizan se producen en el mismo orden de concepto, y aun si existen o no helpers en el framework que se utilice, estos se surtirán de datos a partir de los modelos si es el caso, lo cual no significa que una consulta no pueda realizarse desde una vista o peor caso desde un controlador tirando por la borda todas implementaciones de seguridad y optimizaciones, cuando veo a alguien haciendo un tutorial y colocando consultas en los controladores o vistas se que clase de programador es y eso no significa que no sea bueno si no que es desordenado y carente de los conceptos de seguridad los cuales ignora según el entorno que utilice al realizar tales prácticas, que algo se pueda hacer no significa que sea lo apropiado( en términos de eficiencia), lo seguro o lo correcto.
La verdad que soy bastante nuevo con laravel, hace 1 años o un poquito mas que estoy con este framework, pero he leido tutoriales e visto videos y he leido libro de laravel y las querys las realizan desde los controladores, la verdad que nunca vi una query desde un modelo. Si tenes algun ejemplo de como realizar una query desde el modelo porfa pasamelo, me gustaria aprender a realizarla

saludos
 
De hecho el uso recomendado en la guía de Laravel, es en el controlador, claro eso no te limita a que tomes tus precuasiones y más.
 
buenos dias, yo utlizo Eloquent en laravel desde los controladores, todos los videos, tutoriales o libros que he visto meten las consutas en los controladores
Todo el MVC sea lo normal o HMVC se creo de modo que las vistas se cargaran en controladores, pero obtendrán los datos a partir de modelos, las optimizaciones que los diferentes frameworks realizan se producen en el mismo orden de concepto, y aun si existen o no helpers en el framework que se utilice, estos se surtirán de datos a partir de los modelos si es el caso, lo cual no significa que una consulta no pueda realizarse desde una vista o peor caso desde un controlador tirando por la borda todas implementaciones de seguridad y optimizaciones, cuando veo a alguien haciendo un tutorial y colocando consultas en los controladores o vistas se que clase de programador es y eso no significa que no sea bueno si no que es desordenado y carente de los conceptos de seguridad los cuales ignora según el entorno que utilice al realizar tales prácticas, que algo se pueda hacer no significa que sea lo apropiado( en términos de eficiencia), lo seguro o lo correcto.
De hecho el uso recomendado en la guía de Laravel, es en el controlador, claro eso no te limita a que tomes tus precuasiones y más.
He visto de todo un poco jajaja
Desde que comencé con los primeros Frameworks MVC siempre leí que las consultas a la BD iban en el Modelo, pero al leer que en la misma documentación de Laravel hay ejemplos en los que se realizan en el Controlador.. ahí ya todo cambia.
 
He visto de todo un poco jajaja
Desde que comencé con los primeros Frameworks MVC siempre leí que las consultas a la BD iban en el Modelo, pero al leer que en la misma documentación de Laravel hay ejemplos en los que se realizan en el Controlador.. ahí ya todo cambia.
Juega con Laravel cómo se adapte a tus necesidades, no tienes limitaciones.
 
Atrás
Arriba