MVC: ¿Dónde validar datos con "profundidad"?

Iniciado por Alex_bro, 6 Marzo 2016, 19:22 PM

0 Miembros y 1 Visitante están viendo este tema.

Alex_bro

Buenas tardes!

Mi pregunta de hoy está algo relacionada con un tema que abrí hace unos meses: ¿Cómo crear API JSON en proyecto existente que usa MVC?

El caso es que seguí las instrucciones del compañero MinusFour, y ahora tengo dos mounstruos de aplicaciones, con mucho codigo duplicado, y seguramente es que no estoy aplicando bien el MVC, por eso les pregunto.

Durante mi implementación particular del MVC, he creado unos modelos que tratan con la DB, las vistas pues ningún problema, pero en los controladores... ahí está el asunto. Yo tenia entendido que la validación de los datos introducidos por el usuario se debe hacer en los Controladores, pero ¿esto se refiere a todo tipo de validaciones, o solo limpiar entradas...? ¿El modelo debe validar también los datos que le pasan? Con esta pregunta dije... si valido en el modelo, tengo que repetir menos código en mis dos controladores (uno para el API y otro para la web), pero entonces me vino la siguiente cuestión:

Imaginemos que estamos en un modelo que gestiona las Repuestas a los mensajes de este tema, y se introduce una nueva respuesta... necesitamos llamar al modelo que gestiona los temas para ver si el tema_id que se ha pasado por POST realmente existe. Yo esto lo hago en el controlador, para que un modelo no tenga que hablar con otro. ¿Esto es correcto? ¿Dónde deben hacerse las validaciones de este tipo?

Perdón por la parrafada y gracias de antemano, estoy bastante atascado :rolleyes: