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為表單獲取的URL 地址預設 http 字符串函數(shù)代碼
有時需要接受一些表單中的網(wǎng)址輸入,但用戶很少添加 http:// 字段,此代碼將為網(wǎng)址添加該字段。2010-05-05
PHP入門教程之正則表達式基本用法實例詳解(正則匹配,搜索,分割等)
這篇文章主要介紹了PHP入門教程之正則表達式基本用法,結合實例形式分析了正則表達式的結構、原理及正則匹配、搜索、分割、元子符、修飾符等相關概念與操作技巧,需要的朋友可以參考下2016-09-09

