Не работает AJAX проверка на уникальность имени пользователя YII2. Подскажи что не так в коде?
не, не в том дело... это задаем только одному полю,  а если добавить виджету - то всей, но так тоже не работает...
разобрался: ['username', 'unique'], - работает только c атрибутами ActiveRecord. А у меня class RegForm extends Model.
Поменял:  ['username', 'ajaxValidate'],
 public function ajaxValidate($attribute)
    {
        $user = User::findOne(['username' => $this->username]);
        if($user){
            $this->addError($attribute, 'Пользователь с таким логином существует');
        }elseif (!preg_match('/\+\d{12,15}/', $this->username)) {
            $this->addError($attribute, 'Введите свой номер телефона в формате +111111111111');
        }
    }
Что бы работала ajax валидация, надо включить ее при выводе виджета формы.<?php 
$form = ActiveForm::begin([
'id' => 'registration-form',
'enableAjaxValidation' => true,
])
?>
Еще следует проверить url куда отправляется форма и возможно указать его в конфиге виджета явно. Добавлю, что можно указать не только урл отправки, но и урл для ajax валидации, они могут быть разными экшенами.