首頁 >後端開發 >php教程 >Yii2中場景的簡單使用

Yii2中場景的簡單使用

不言
不言原創
2018-06-15 16:35:421538瀏覽

這篇文章主要為大家介紹了關於Yii2中簡單的場景使用的相關資料,文中介紹的非常詳細,對大家具有一定的參考學習價值,需要的朋友們下面來跟著小編一起學習學習吧。

本文主要介紹的是關於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';其結果是:用戶名,密碼都驗證了

如果這個時候再在模型加上幾句程式碼:

##

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

結果是:使用者名稱沒有驗證,密碼驗證了

還有要注意如果你在模型裡重寫了

scenarios()方法,在控制器呼叫了場景,那個呼叫的場景名稱必須在scenarios()方法裡有,否則出錯!

以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP中文網!

相關推薦:

yii2實作分頁與搜尋的分頁功能

如何實作Yii框架在頁面輸出執行sql語句並進行偵錯

#

以上是Yii2中場景的簡單使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn