Yii2 0中場景的使用小記

2022-02-20 09:54:25 字數 819 閱讀 5608

熟悉yii框架的人都知道,靈活的使用場景可以達到事半功倍的效果!

比如普通的資料的新增、修改,新增需要驗證其中兩個字段,而修改只需要驗證其中乙個字段;還有種情況,也是我們現在用到的,同一張表(同乙個model)有可能在不同的專案分支中使用,但是不用的專案分支對成員變數的驗證是不一樣的,這時使用場景就可以輕鬆搞定;

1、yii2中簡單的場景使用在這裡有說明:

2、但是對於初學者可能還是不能靈活的應用:

1

public

function

rules()

2

對於rules中指定部分成員變數的驗證規則以及所屬場景,還是推薦上面這種寫法,當然也可以直接在類裡面定義乙個方法名為scenarios的方法;

如何使用:

1、如果需要new乙個新的物件就使用某個場景,直接採用:

1

$bus_department = new busdepartment(['scenario' => 'add_customer']);

2、更新資料的時候經常會用到這種:

1

$bus_department = busdepartment::findone($id);

使用場景的方法是:

1

$bus_department->setscenario('add_customer'); 或者 $bus_department->scenario = 'add_customer';

這樣,在操作當前物件的時候就會按照所設定的場景進行規則驗證。

Yii2 0 場景的簡單使用

下面給大家介紹一下 yii2.0 場景的使用。小伙多嘮叨一下了,就是擔心有的人還不知道,舉個簡單的例子,現在在 post表裡面有title image content 三個的字段,當我建立乙個 post的時候,我想三個字段全部是必填項,但是你修改的時候,title content 兩個欄位是必填的,...

Yii 2 0 中使用分頁

use yii data pagination model user find model model where jihuo 7 pages new pagination totalcount model count models model offset pages offset limit p...

yii2 0 模組的使用

以高階模板為例 1 複製目錄 frontend或backend 為乙個新目錄pro 修改advanced common config bootstrap.php 新增一行,載入剛才的路勁 yii setalias pro dirname dirname dir pro 2 目錄pro建立module...