A veces tenemos algo de lógica empresarial representada en el código del controlador de nuestras aplicaciones. Esta suele ser la lógica que diferencia qué métodos llamar del modelo y / o qué argumentos transmitir.
Otro ejemplo de esto es un conjunto de funciones de utilidad que existen en el controlador que pueden funcionar para formatear o desinfectar los datos devueltos por el modelo, de acuerdo con un conjunto de reglas comerciales.
Esto funciona, pero me pregunto si está coqueteando con el desastre. Si existe una lógica empresarial compartida entre el controlador y el modelo, las dos capas ya no son separables, y alguien que herede el código puede confundirse por esta irregularidad en la ubicación del código relacionado con la lógica empresarial.
Mi pregunta es ¿cuánta lógica empresarial debe permitirse en el controlador y en qué circunstancias, si corresponde?