CakePHP es un framework poderoso, una prueba de ello podríamos decir es la parte de validaciones.
Usando el array validate en los modelos uno puede validar diferentes campos de un formulario, esta validación lo podemos hacer síncrona o asíncrona (ajax o no ajax).
Como sea, el tema se plantea arduo cuando tenemos muchos modelos y formularios asociados a ellos.
Una de los métodos mas usados actualmente es la validación vía ajax(al vuelo), validar cada vez que el campo pierde foco o al apretar el botón submit del formulario.
Por lo general cada validación se inserta en los métodos de los controladores que ejecutaran inserción. Con esto, la idea es centralizar las validaciones en un solo controlador y estandarizar los elementos del formulario para que contengan un id común al modelo y un atributo class al cual usaremos para adicionar eventos de validación.
En este caso clasificaremos cada casilla de texto como class=forminput y cada lista como class=formlist para determinar que evento dispara la validación en uno u otro.
Un Sistema de gestión de contenidos (Content Management System en inglés, abreviado CMS) es un programa que permite crear una estructura de soporte (framework) para la creación y administración de contenidos, principalmente en páginas web, por parte de los participantes.