yii cactivedataprovider指定了默认排序,但使用AJAX排序的前台无效

use*_*679 1 php yii

yii cactivedataprovider指定了默认排序,但使用AJAX排序的前台无效.使用sortableattributes排序无效

public function actionIndex()
{
    // renders the view file 'protected/views/site/index.php'
    // using the default layout 'protected/views/layouts/main.php'
    $article = new CActiveDataProvider('article',array(
        'criteria'=>array(
            'order'=>'id DESC',
        ),
        'pagination'=>array(
            'pageSize'=>15,
        ),

    ));
    $this->render('index',array('article'=>$article));
}

$this->widget('bootstrap.widgets.TbListView', array(
'dataProvider'=>$article,
'itemView'=>'_list',   // refers to the partial view named '_post'
'template'=>'{sorter}{items}{pager}{summary}',
'sortableAttributes' => array(
    'id',
    'date'
)
Run Code Online (Sandbox Code Playgroud)

dIn*_*0nG 7

必须将默认顺序指定为defaultOrder属性CActiveDataProvider::sort.

所以修改你的代码

$article = new CActiveDataProvider('article',array(
        'sort'=>array(
            'defaultOrder'=>'id DESC',
        ),
        'pagination'=>array(
            'pageSize'=>15,
        ),
Run Code Online (Sandbox Code Playgroud)