【问题标题】:How to do a default sort on cgridview in yii1如何在yii1中对cgridview进行默认排序
【发布时间】:2015-10-14 06:51:57
【问题描述】:

我有以下 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',
),

【问题讨论】:

  • 'defaultOrder'=>'id DESC', ??
  • @Criesto 不,它没有用。有没有办法在视图文件而不是模型中进行这种默认排序?
  • 您是否遇到任何错误?在应该遵循 MVC 结构的视图中执行此操作不是一个好主意,为什么 gridview 小部件中有 [/size]
  • 不,我没有 :-) 是的,我收到错误“CDbException”。有什么办法可以做到吗?
  • 如果您想在视图中执行此操作,那么您必须自定义整个事情,我建议您不要这样做。使用您遇到的错误更新您的问题。

标签: yii cgridview yii1.x


【解决方案1】:

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

$criteria->order = 't.id ASC';

并添加到 CActiveDataProvider

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

【讨论】:

  • 我会试一试并尽快回复您
  • 'defaultOrder'=>'t.id ASC',
  • 简洁明了~
猜你喜欢
  • 2021-12-16
  • 2020-05-22
  • 1970-01-01
  • 2015-08-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-19
  • 1970-01-01
相关资源
最近更新 更多