2015-06-18 53 views
0

我發現Yii 2.0的文檔和教程有點簡短。Yii:計算模型的自定義字段

在Yii 2.0模型中,我想添加一個帶有計算值的隱藏字段,我們稱之爲def_id。該模型包含名字,姓氏,電子郵件等字段。計算的值將是這三個字段的某種組合。 (它應該是一些自定義類型的邏輯,唯一的自動增量。)

我的問題:我在哪裏計算def_id與其他給定的字段,以便CreateUpdate將def_id寫入數據庫表?

回答

2

模型中沒有隱藏字段,只有字段。如果是計算字段,則不必在屏幕上顯示它,因此放入隱藏字段沒有意義。

你可以把它然而添加到之前保存功能模型

public function beforeSave() 
{ 
    if ($this->isNewRecord) { 
     //calculate what you need    
    } else { 
     //recalculate if needed 
    } 
    return parent::beforeSave(); 
}