溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

yii2.0框架的使用場景有哪些

發(fā)布時間:2021-05-07 15:43:04 來源:億速云 閱讀:145 作者:Leah 欄目:開發(fā)技術(shù)

這篇文章將為大家詳細(xì)講解有關(guān)yii2.0框架的使用場景有哪些,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

一、規(guī)則中使用場景

規(guī)則場景的使用

模型層

public function rules()
{
  return [
    [['name','product_id'],'required','on'=>'add],
  ];
}

表示只在add場景下改規(guī)則才生效。

在控制器中指定場景:

$model->scenario = "add";

或者

$model = new User(['scenario' => 'add']);

最后使用函數(shù)觸發(fā)驗證:

$model->load(Yii::$app->request->post()) //加載值
$model->validate() //證規(guī)則

當(dāng)驗證不通過時可以直接刷新頁面

return $this->refresh();

二、場景方法定義字段在固定場景下才能被修改

模型層

public function scenarios()
{
  return [
    'default' => ['table_name', 'field_name'],//默認(rèn)所有場景都可以操作
 'add' => ['age', 'name'],
 'update' => ['age'],
  ];
}

表示:

添加場景(add) 只會添加 age和name兩個字段的值到數(shù)據(jù)庫

修改場景(uodate)只會把a(bǔ)ge的值修改

所以一般情況下是不會重寫scenarios方法,當(dāng)動態(tài)增加字段時還得手動修改方法里的字段

關(guān)于yii2.0框架的使用場景有哪些就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI