class SomeModel extends CActiveRecord
{
public static function model($className=__CLASS__)
{
return parent::model($className);
}
public function tableName()
{
return '{{some_table}}';
}
public function getItemByParentId($parentId)
{
$criteria=new CDbCriteria;
//some criteria
return self::model()->findAll($criteria);
}
}
当我从控制器调用它时,此方法正常工作 SomeModel ::模型() - > getItemByParentId($ someVariable)
但是现在我有3个与SomeModel模型非常相似,所以我想把常用方法放到一个类
class CommonModel extends CActiveRecord
{
public static function model($className=__CLASS__)
{
return parent::model($className);
}
public function getItemByParentId($parentId)
{
$criteria=new CDbCriteria;
//some criteria
return self::model()->findAll($criteria);
}
}
class FirstModel extends CommonModel
{
public static function model($className=__CLASS__)
{
return parent::model($className);
}
public function tableName()
{
return '{{first_table}}';
}
}
class SecondModel extends CommonModel
{
public static function model($className=__CLASS__)
{
return parent::model($className);
}
public function tableName()
{
return '{{second_table}}';
}
}
但是得到错误
活动记录类“CommonModel”的表“CommonModel”不能 可以在数据库中找到。
有什么问题?
答案 0 :(得分:0)
尝试改变:
public function getItemByParentId($parentId) { $criteria=new CDbCriteria; //some criteria return static::model()->findAll($criteria); }