我需要将具有多列group by子句的sql语句转换为Yii 1.1.4版中的CActiveDataProvider吗?
select * from my_table_name group by bookname,categorytitle,bookkey order by bookname,categorytitle,bookkey asc;
我需要一个CActiveDataProvider来提供CGridView搜索功能。显然,我只在运行我的CGridView的搜索功能模型中有一个简单的返回
return new CActiveDataProvider(get_class($this),
array(
'criteria' => $criteria,
'sort' => array(
'defaultOrder' => 'id ASC'
),
'pagination' => array('pageSize' => ActiveRecord::PAGE_SIZE),
));
那么如何将我提供的sql语句转换为CActiveDataProvider格式?
答案 0 :(得分:0)
你可以用两种方式 -
创建sql视图,然后创建yii模型并在你的中使用它 控制器或页面视图。
在现有模型中创建自定义搜索功能,并按
e.g。 -
<?php
public function new_search(){
$criteria = new CDbCriteria();
...
..
$criteria->group = "bookname, categorytitle, bookkey";
$criteria->order = "bookname, categorytitle, bookkey";
return new CActiveDataProvider($this, array(
'criteria'=>$criteria,
'pagination'=>array('pageSize'=>100)
));
}
?>