如何在yii1中对cgridview进行默认排序

如何在yii1中对cgridview进行默认排序,yii,cgridview,yii1.x,Yii,Cgridview,Yii1.x,我有以下cgrid视图 $this->widget('zii.widgets.grid.CGridView', array( 'id'=>'complaint-job-grid', 'dataProvider'=>$model->search($complaint), //~ 'filter'=>$model, 'columns'=>$columns, 'enableSorting'=>true, ));

我有以下cgrid视图

$this->widget('zii.widgets.grid.CGridView', array(
    'id'=>'complaint-job-grid',
    'dataProvider'=>$model->search($complaint),
    //~ 'filter'=>$model,
    'columns'=>$columns,
    'enableSorting'=>true,



));
我的模型代码是

public function search($complaint)
    {
        // @todo Please modify the following code to remove attributes that should not be searched.

        $criteria=new CDbCriteria;
        $criteria->with    =    array('complaint_job','user');

        $criteria->compare('complaint_job.job_desc',$this->job_search, true);
        if($this->user_search)
            $criteria->addSearchCondition('CONCAT(first_name," ",last_name)', $this->user_search);
        $criteria->compare('complaint_id',$complaint);
        $criteria->compare('id',$this->id);
        $criteria->compare('job_id',$this->job_id);
        $criteria->compare('local_description',$this->local_description,true);
        $criteria->compare('employee_id',$this->employee_id);
        $criteria->order = 't.id ASC';
        return new CActiveDataProvider($this, array(
            'criteria'=>$criteria,
        ));
    }
所以我基本上想要的是在cgridview中以id(主键)的降序显示值。可能吗

我这样试了,但没有成功

return new CActiveDataProvider($this, array(
            'criteria'=>$criteria,
            'sort'=>array(
    'defaultOrder'=>'id ASC',
),

您正在CDbCriteria中进行排序; 这就是为什么使用CActiveDataProvider的CGridView中的排序不起作用。 从模型中删除:

$criteria->order = 't.id ASC';
并添加到CActiveDataProvider

'defaultOrder'=>'t.id ASC', 

'defaultOrder'=>'id DESC',
??@Criesto不,它不起作用。有没有办法在视图文件而不是模型中进行默认排序?是否有错误?在视图中执行此操作不是一个好主意您应该遵循MVC结构,为什么在
gridview
小部件中有
[/size]
?不,我没有:-)是的,我收到一个错误“CDBEException”“。是否有任何方法在视图中执行此操作?如果您想在视图中执行此操作,则必须自定义整个操作,我建议您不要这样做。”。用你遇到的错误更新你的问题。我会尝试一下,然后很快回复你“defaultOrder”=>“t.id ASC”,精彩而简单~