Не могу понять в чем дело validatePassword() всегда вызывает ошибку не зависимо от того правильно введен пароль или нет, делаю так в модели Users генерирую пароль и сохраняю в базу данных методом
public function setPassword($password){
$this->password = Yii::$app->getSecurity()->generatePasswordHash($password);
}
пароль создается нормально и записывается в базу данных тоже без проблем теперь сам метод валидации в модели
public function validatePassword($attribute, $params)
{
if (!$this->hasErrors()) {
$user = $this->getUser();
if (!$user || !Yii::$app->security->validatePassword($this->password, $user->password)) {
var_dump($this->password . "------------" . Yii::$app->getSecurity()->validatePassword($this->password, $user->password) . "**********" . $user->password);
$this->addError($attribute, "Пароль или имя пользователя введены неверно");
}
}
}
var_dump выводит следующее Slay------------**********$2y$13$Gnd.7dQCOpajawjRmn0laupNfj8tWAISLfYKazwmYHR
то есть я так понимаю пароль с формы и захешированный пароль с базы данных функция получает правильные только вот ничего не возвращает вместо пустоты между ---*** должен быть 0, и если использовать простой пароль и сохранять его в БД а потом сравнивать проблем нет все работает, может я гдето чтото упускаю или забыл подключить?