Доброго времени суток. Хочу чтобы айди пользователя ВК сохранялось в отдельной колонке vk_id и если уже есть такой пользователь, то просто авторизация, если нет, соответственно регистрация. В контроллере: Код (Text): public function actionLoginVk($uid, $first_name, $photo) { $user = new User(); if ($user->saveFromVk($uid, $first_name, $photo)) { return $this->redirect(['/site/index']); } } в модели: Код (Text): public function saveFromVk($uid, $name, $photo) { $user = User::findOne($uid); if($user) { return Yii::$app->user->login($user); } $this->vk_id = $uid; $this->name = $name; $this->photo = $photo; $this->create(); return Yii::$app->user->login($this); } public function create() { return $this->save(false); } правила в модели: Код (Text): [['vk_id'],'unique','targetClass'=>'app\models\User', 'targetAttribute'=>'vk_id'] но мне каждый раз создает нового пользователя, id разное, vk_id одинаковое, если ставлю через миграции стобец vk_id->unique, то при повторной авторизации ошибка, типа такое значение уже есть
Спасибо, навели на мысль, дальше всё получилось! Код (Text): $user = User::find()->where(['vk_id'=>$uid])->one();