ホームページ >バックエンド開発 >PHPチュートリアル >Yii2 のシナリオの簡単な紹介

Yii2 のシナリオの簡単な紹介

*文
*文オリジナル
2018-01-03 13:38:491064ブラウズ

この記事では主に Yii2 での簡単なシナリオの使用に関する関連情報を紹介します。記事内の紹介は非常に詳細であり、必要な友人はエディターに従って一緒に学ぶことができます。お役に立てれば幸いです。

コード (メイン部分) に直接移動します:

モデル層:

public function rules()
{
 return [
  [['name', 'account', 'pwd'], 'string', 'max' => 11],
  ['account','required','message'=>'用户名不能为空'],
  ['pwd','required','message'=>'密码不能为空','on'=>'update']
 ];
}

コントローラー:

$model = new User();
if(isset($_POST['User'])){
 $model -> attributes = Yii::$app->request->post('User');
 $model -> save();
}

現時点ではコントローラーでシーンは呼び出されません。結果は次のようになります: ユーザー名は検証されましたが、パスワードは検証されませんでした

$model->scenario='update'; をコントローラーに追加すると、結果は次のようになります: ユーザー名とパスワードが検証されました $model->scenario='update';其结果是:用户名,密码都验证了

如果这个时候再在模型加上几句代码:

public function scenarios()
{
 return [
  'update'=>['pwd'],//在该场景下的属性进行验证,其他场景和没有on的都不会验证
 ];
}

其结果是:用户名没有验证,密码验证了

还有要注意如果你在模型里重写了scenarios()

この時点でモデルに数行のコードを追加すると:

rrreee

結果は次のようになります: ユーザー名は検証されず、パスワードは検証されますまた、モデル内の を書き換える場合には注意してください。 scenarios() メソッドはコントローラー内のシーンを呼び出します。呼び出されるシーン名は scenarios() メソッド内に存在する必要があります。そうでない場合はエラーが発生します。

関連する推奨事項:

Yii2 でのシーンの使用方法の詳細な説明

Yii フレームワークがカスタムファイルへのロギングを実装する方法の詳細な説明

🎜🎜🎜🎜🎜 の使用方法の詳細な説明Yii2 フォームウィジェット🎜 🎜🎜

以上がYii2 のシナリオの簡単な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。