В моем приложении Yii2 я пытаюсь проверить поле, которое я использую для ввода имени пользователя, используя специальный метод проверки, который проверяет, имеют ли это поле пробелы.Yii2 подтвердите имя пользователя
class SomeModel extends Model
{
public $username;
public $email;
public $password;
public function rules()
{
return
[
// Other rules
[
[
'username',
'password',
],
function ($attribute, $params)
{
if (preg_replace('/\s+/', '', $this->attribute)) {
$this->addError($attribute, 'No white spaces allowed!');
}
},
],
],
}
Проблема, которая не работает. Записи сохраняются с пробелами.
По мнению это поле:
<?= $form->field($model, 'username')->textInput(['class' => 'form-control', 'autocomplete' => 'off', 'placeholder' => 'Username'])->label(FALSE); ?>
Вы пробовали [фильтр] (http://www.yiiframework.com/doc-2.0/guide-tutorial-core-validators. html # filter) – dod29
изменить 'user_username' на' username' like '= $form-> field ($ model, 'username') -> textInput (['class' => 'form-control', 'autocomplete' => 'off', ' 'placeholder' => 'Username']) -> label (FALSE); ?> ' – vishuB
вы хотите выбросить ошибку, когда имя пользователя или пароль содержат пробелы? Или вы хотите заменить белые пробелы? –