Mejor opción en arquitectura MVC

Hola a todos,

estoy desarrollando una aplicación web utilizando Yii y siguiendo escrupulosamente (o eso intento) la arquitectura MVC.

El caso es que necesito cargar un archivo, leer su contenido y guardar los datos que extraiga de él en la base de datos de la aplicación web. ¿Esta es función del controlador o del modelo?

Entiendo que el controlador debería recoger la petición (el archivo a través de un formulario) y el modelo guardar lo datos en la base de datos. Pero, ¿quién se encarga de la lógica?

No se si me he explicado.

Un saludo.

Los expertos en MVC suelen recomendar que los controladores deben mantenerse tan pequeños y livianos como sea posible, pero los modelos pueden ser tan pesados y grandes como se quiera.

Así que normalmente la lógica suele ir en el modelo, pero respetando que el modelo no tenga acceso a sesiones, cookies o variables get y post.

Saludos desde Colombia.

Gracias por tu respuesta ;)