我有两个继承自公共基类的模型。
class Batsmen extends CPlayer{
batsmen_id // model field.
batsmen_name // model field.
}
class Bowler extends CPlayer{
bowler_id // model field.
bowler_name // model field.
}
//作为击球手和投球手模型的基类的组件类。
class CPlayer extends CActiveRecord{
public player_id;
public player_name;
}
我想在加载对象或创建对象后将Batsmen/Bowler的属性值加载到基类CPlayer属性。我该怎么做呢?
如果你想在模型加载后将batsmen_id设置为player_id使用afterFind方法:
protected function afterFind(){
parent::afterFind();
$this->player_id = $this->batsmen_id;
}
如果你只是初始化对象,使用init
public function init(){
parent::init();
$this->player_id = $this->batsmen_id;
}