У меня есть форма для создания пользователя, и я проверю существующее имя пользователя в одном из наших API, и я создаю правило с настраиваемой функцией проверки и она работает нормально. Но при обновлении формы пользовательская функция также запускается и отображает ошибку «Имя пользователя уже существует» с моим именем пользователя.
Мои правила
public function rules()
{
return [
['username', 'trim'],
['username', 'uniqueUsers'], // Find username already exists
]
}
Моя пользовательская функция проверки,
public function uniqueUsers($attributes, $params)
{
$getUser = Yii::$app->params['user']."?username=".$this->username;
$validUsername = BaseModel::getDetails($getUser);
$getUserValue = isset($validUsername['display']) ? $validUsername['display'] : '';
if($getUserValue!='') {
// echo "$attributes/";
$this->addError($attributes, 'Username Already Exists');
}
}
Вот что я хочу, я использовал то же имя пользователя, которое не будет запускать функция, но я изменился снова, затем должен вызвать эту функцию для проверки уникальности.