Столкнулся с тем что есть проблемы для применения расширенного от CDbCriteria класса - в CActiveRecord в двух местах жестко прописано "new CDbCriteria"
Код: Выделить всё
public function getDbCriteria($createIfNull=true)
{
if($this->_c===null)
{
if(($c=$this->defaultScope())!==array() || $createIfNull)
$this->_c=new CDbCriteria($c);
}
return $this->_c;
}
public function resetScope($resetDefault=true)
{
if($resetDefault)
$this->_c=new CDbCriteria();
else
$this->_c=null;
return $this;
}
Может быть лучше было бы вынести создание критерия в отдельный метод, чтобы перекрыв его без проблем менять используемый класс или мб вынести название класса в свойство.