Cet article vous présente principalement les informations pertinentes sur l'utilisation de scénarios simples dans Yii2. L'introduction dans l'article est très détaillée et a une certaine valeur de référence et d'apprentissage pour tous les amis qui en ont besoin peuvent suivre l'éditeur pour apprendre ensemble. . J'espère que cela aide tout le monde.
Aller directement au code (partie principale) :
Couche modèle :
public function rules() { return [ [['name', 'account', 'pwd'], 'string', 'max' => 11], ['account','required','message'=>'用户名不能为空'], ['pwd','required','message'=>'密码不能为空','on'=>'update'] ]; }
Contrôleur :
$model = new User(); if(isset($_POST['User'])){ $model -> attributes = Yii::$app->request->post('User'); $model -> save(); }
Aucune scène n'est appelée dans le contrôleur pour le moment. Son résultat est : nom d'utilisateur vérifié, mot de passe non vérifié
Si vous ajoutez une phrase $model->scenario='update';
au contrôleur, le résultat est : nom d'utilisateur et mot de passe vérifiés
Si vous ajoutez quelques lignes de code au modèle à ce moment :
public function scenarios() { return [ 'update'=>['pwd'],//在该场景下的属性进行验证,其他场景和没有on的都不会验证 ]; }
Le résultat est : le nom d'utilisateur n'est pas vérifié, le mot de passe est vérifié
Il y a autre chose à laquelle faire attention Si vous remplacez la méthode scenarios()
dans le modèle et appelez la scène dans le contrôleur, le nom de la scène appelée doit être dans la méthode scenarios(), sinon une erreur se produira !
Recommandations associées :
Explication détaillée de l'utilisation des scènes dans Yii2
Explication détaillée de l'utilisation des widgets de formulaire Yii2
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!