Yii:计算模型的自定义字段

时间:2015-06-18 15:22:35

标签: yii

我发现Yii 2.0的文档和教程有点短。

在Yii 2.0模型中,我想添加一个带有计算值的隐藏字段,我们称之为def_id。该模型包含诸如firstname,lastname,email等字段。计算出的值将是这三个字段的某种组合。 (它应该是逻辑的,唯一的自动增量的一些自定义类型。)

我的问题:我在哪里用其他给定字段计算def_id,以便function TestCtrl($scope) { $scope.firstInvalid = false; $scope.secondInvalid = false; $scope.firstValue = ''; $scope.secondValue = ''; $scope.doOnChange = function () { console.log('change fired'); $scope.firstInValid = !$scope.firstInvalid; $scope.secondInvalid = !$scope.secondInvalid; }; }; Create将def_id写入数据库表?

1 个答案:

答案 0 :(得分:2)

模型中没有隐藏字段,只有字段。如果它是计算字段,你甚至不必在屏幕上显示它,所以没有必要放入一个隐藏的字段。

然而,您可以将其添加到模型的保存前功能

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