Я хотел бы спросить, есть ли способ, которым я могу сгруппировать несколько правил в модели в 1, чтобы я мог уменьшить количество кодов, особенно в тех местах, где один и тот же атрибут должен быть проверен на нескольких правилах … Ниже приведены правила декларация сейчас …
array (
'new_email_addr',
'email',
'on' => 'chngEmail'
),
array (
'new_email_addr',
'required',
'on' => 'chngEmail'
),
array (
'new_email_addr',
'sameEmail',
'on' => 'chngEmail'
),
Как видите, атрибут new_email_addr Перед сохранением нужно проверить 3 правила … Я хотел добиться чего-то вроде этого, чтобы я мог сделать все в одном разделе.
array (
'new_email_addr',
'required, email, sameEmail',
'on' => 'chngEmail'
),
Есть ли такие возможности?
Нет, это невозможно. Вы можете сгруппировать несколько полей, сценариев и исключений вместе, но не несколько валидаторов (см. определенный гид Например).
Единственным выходом было создать свой собственный валидатор, объединяющий требуемые, как предложил Сэмюэл.
Других решений пока нет …