Бывает что в yii нужно на ходу в зависимости от конкретных параметров добавить новое правило валидации.
Для этого нам потребуется просто добавить в лист валидаторов новое правило (validation rule):
$validators = $model->getValidatorList();
$validators->add(CValidator::createValidator(‘match’, $model, array(‘our_variable’),
array(
‘pattern’ => ‘/^[А-Я]/i’,
‘message’ => ‘Только большие русские буквы пожалуйста’
)
));
Как пример, тут используется правило match. Оно сравнивает по регулярному выражению pattern значение our_variable и если оно некорректно выдает message.