Здравствуйте. Столкнулась с такой проблемой, что правила валидации для поля с датой не работают.
Суть: есть поле "дата регистрации" и "дата увольнения". Первое поле является обязательным, второе - нет, но при этом необходимо проверять, чтобы дата регистрации была меньше даты увольнения.
По факту: при выборе любой даты регистрации вылезает ошибка Значение «Reg Date» должно быть меньше значения «Expel Date», неважно, выбрана ли корректная дата увольнения или не выбрана вообще.
public function rules()
{
return
[
[['f_fio', 'i_fio', 'o_fio'], 'match', 'pattern' => '/^[A-Za-zА-Яа-яЁё\-\s\']*$/'],
[['f_fio', 'i_fio', 'sex', 'id_organization', 'reg_date', 'birthday'], 'required'],
['reg_date', 'compare', 'compareAttribute' => 'expel_date', 'operator' => '<'],
['expel_date', 'date', 'skipOnEmpty' => true],
[['specializations', 'o_fio', 'id_user', 'expel_date'], 'safe'],
];
}