2019-05-06 15:54:19 1094次浏览 1条回答 0 悬赏 50 金钱

微信截图_20190506155205.png

如截图中的字段是通过另外两个字段运算得到的,这样的字段怎么实现排序功能

最佳答案

  • 花椒 发布于 2019-05-06 16:51 举报

    首先需要定义'enableSorting'=>true,才能让字段点击排序,即:
    `

        [
                'attribute'=>'_percent',
                'label'=>'销售占比',
                'enableSorting'=>true,
                'value'=>function($model){
                    return $model->saleroom/$model->saleroom_sum;
                }
            ],
    

    然后在Model的Search中,增加

    $query = YourModel::find()->addSelect('*')->addSelect(new Expression('saleroom/saleroom_sum as _percent'));
    
    $dataProvider->setSort([
            'attributes' => [
                '_percent' => [
                    'asc' => ['_percent' => SORT_ASC],
                    'desc' => ['_percent' => SORT_DESC],
                    'label' => 'Customer Name'
                ],
            ]
        ]);
    

    `
    这样就可以实现你想要的排序了~

    1 条回复
    回复于 2019-05-09 14:00 回复

    谢谢 我试试

    没有找到数据。
您需要登录后才可以回答。登录 | 立即注册
EizoPeter
总监

EizoPeter

注册时间:2018-08-30
最后登录:2020-06-18
在线时长:34小时12分
  • 粉丝6
  • 金钱2775
  • 威望0
  • 积分3115

热门问题