К сожалению, вы не можете сделать недействительным поле с этой функцией.
Но что делает invalidate ()?
function invalidate($field, $value = true) {
if (!is_array($this->validationErrors)) {
$this->validationErrors = array();
}
$this->validationErrors[$field] = $value;
}
Он просто устанавливает валидацию ошибок модели.
Итак, вы можете выполнять следующие действия в вашем контроллере (но я также призываю вас перенести эту проверку в модель):
$this->User->validationErrors[1]['description'] = 'Your error message';
Следующий код сделает недействительным второе описание в списке.
НТН