【问题标题】:yii2 GridView sort on column clickyii2 GridView按列排序
【发布时间】:2015-06-26 15:07:14
【问题描述】:

我学习yii2,尝试制作带有可排序日期列的GridView::widget。

我找到了一个简单的方法,使用:'columns' => ['created_at:datetime'],但我不明白如何使用自定义方法。

这是我的代码:

<?=GridView::widget([
    'dataProvider' => $dataProvider,
    'columns' => 
    [
        ['class' => 'yii\grid\SerialColumn'],
        'created_at:datetime',      //an easy way, makes default asc/desc sort on link click

        [
            'header' => "Date",     //the same, but how to make sort, (need to add link someway)?
            'format' => 'datetime',
            'value' => 'created_at',
            'contentOptions'=>['style'=>'width: 130px;',
                'enableSorting' => true,
            ]
        ],
    ],
    'options' => ['class'=>'doc-table'],


]);
?>

这里是$dataProvider

        $dataProvider->sort = ['defaultOrder' =>
                        //['created_at' => 'desc'],
                        ['attributes' => 
                            ['created_at' =>
                                [
                                    'asc' => ['created_at' => SORT_ASC],
                                    'desc' => ['created_at' => SORT_DESC],
                                ]
                            ]
                        ],
                    ];  
    return $this->render('index', [
                'dataProvider' => $dataProvider,
    ]);

【问题讨论】:

标签: gridview yii2


【解决方案1】:

您在“created_at”的字段上使用属性名称。

喜欢..

[
'attribute' => 'created_at',
'header' => 'date',
'Value' => .....,
]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-02
    • 1970-01-01
    相关资源
    最近更新 更多