私のYii2アプリケーションでは、このフィールドに空白があるかどうかをチェックするカスタム検証メソッドを使用して私が入力したユーザー名のフィールドを検証しようとしています。Yii2 validate username
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'を' = $form->フィールド($ model、 'username') - > textInput(['class' => 'フォームコントロール'、 'オートコンプリート' => 'オフ' 'placeholder' => 'Username']) - >ラベル(FALSE); ?> ' – vishuB
ユーザー名またはパスワードに空白が含まれているとエラーが発生しますか?または白いスペースを置き換えたいですか? –