我有一个Yii应用程序,在2个模型中,我有beforeValidation方法的代码。
yii是否有解决方案,或者我应该创建一个组件并使用这个公共代码的参数?
答案 0 :(得分:3)
您可以创建一个模型扩展的类:
class CommonClass extends CActiveRecord
{
public function beforeValidate(){
...
}
}
class A extends CommonClass{
}
class B extends CommonClass{
}
或者您可以定义行为并将此行为添加到您的两个模型中!
class YourBehavior extends CActiveRecordBehavior
{
public function beforeValidate($event)
{
...
}
}
class A extends CActiveRecord{
public function behaviors(){
return array(
'YourBehavior' => array(
'class' => 'components.YourBehavior',
),
);
}
}
class B extends CActiveRecord{
public function behaviors(){
return array(
'YourBehavior' => array(
'class' => 'components.YourBehavior',
),
);
}
}