簡體   English   中英

Yii:反轉 CGridView 顯示順序

[英]Yii: Reverse CGridView display order

如何反轉 CGridView 的順序(默認顯示最新的在頂部)?

我目前有 Gii 生成的代碼:

public function actionAdmin() {
    $model = new Post('search');
    $model->unsetAttributes();
    if (isset($_GET['Post']))
        $model->attributes = $_GET['Post'];

    $this->render('admin', array(
        'model' => $model,
    ));

請幫忙。 謝謝。

如果您將順序設置為查詢的一部分,您將無法使用列排序器。 您需要更新創建數據提供者的排序屬性,在這種情況下可能在提到的 function @xiaohan2012 中。 它看起來像:

    return new CActiveDataProvider('Post', array(
        'criteria'=>$criteria,
        'sort'=>array(
            'defaultOrder'=>'update_time DESC',
        ),
    ));

或者要創建一個完全自定義的排序,您需要創建一個新的排序 object 類似:

    $sort = new CSort();
    $sort->defaultOrder = 'update_time DESC';
    $sort->attributes = array(
        'post_name'=>array(
            'asc'=>'post_name asc',
            'desc'=>'post_name desc',
        ),
        'update_time'=>array(
            'asc'=>'update_time desc',
            'desc'=>'update_time asc',
        ),
        [... additional columns]
    );

在這種情況下,您的數據提供者將類似於:

    return new CActiveDataProvider('Post', array(
        'criteria'=>$criteria,
        'sort'=>$sort,
    ));

你可以試試對應的 class Post (在protected/models/Post.php 中),找到搜索function。 這是控制搜索區域內容的地方。

嘗試這個:

$criteria->order("create_time desc");

或參考: http://www.yiiframework.com/doc/api/1.1/CDbCriteria

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM