• Yii2.0在GridView中下拉过滤筛选的实现


    Yii2.0在GridView中下拉过滤筛选的实现
    细微的方便也许对于我们的用户来说将会获得最好的体验,用最方便,最快捷,最易操作的方式实现用户需要的功能是我们的工作和职责,今天分享一个在Yii2.0在GridView中下拉过滤筛选的实现,希望能够大家带来一点点的帮助和建议,不说废话了,直接看demo吧
    
    如下是文章管理列表页中如何实现的demo
    
    view层代码
    
    <?= GridView::widget([
        'dataProvider' => $dataProvider,
        'filterModel' => $searchModel,
        'columns' => [
            ['class' => 'yiigridSerialColumn'],
            'id',
             [
                'attribute' => 'category',
                'label'=>'栏目',
                'value'=>
                 function($model){
                      return  Article::get_type_text($model->category);   //主要通过此种方式实现
                    },
                'filter' => Article::get_type(),     //此处我们可以将筛选项组合成key-value形式
             ],
    
            'title',
            [
                'attribute' => 'uid',
                'label'=>'管理员',
                'value'=>
                function($model){
                    return  Article::get_uid_type_text($model->uid);   //主要通过此种方式实现
                },
            ],
    
            [
                'attribute' => 'updatetime',
                'label'=>'更新时间',
                'value'=>
                function($model){
                    return  date('Y-m-d H:i:s',$model->updatetime);   //主要通过此种方式实现
                },
                'headerOptions' => ['width' => '170'],
            ],
    
            ['class' => 'yiigridActionColumn', 'header' => '操作'],
        ],
    ]); ?>
    
    model层代码
    
    /**
    * 将栏目组合成key-value形式
    */
    public static  function  get_type(){
        $cat = Category::find()->all();
        $cat = ArrayHelper::map($cat, 'id', 'name');
        return $cat;
    }
    
    /**
    * 通过栏目id获得栏目名称
    * @param unknown $id
    * @return Ambigous <unknown>
    */
    
    public static  function  get_type_text($id){
        $datas = Category::find()->all();
        $datas = ArrayHelper::map($datas, 'id', 'name');
        return  $datas[$id];
    
    }

    原文出处:http://www.yiichina.com/tutorial/348
  • 相关阅读:
    判断是否可以点击
    窗口截图
    设置等待操作
    时间控件处理
    eclipse小技巧
    Angular 学习1
    MVC 中引用Angularjs
    Bootstrap 侧边栏 导航栏
    C# 直接使用sql语句对数据库操作 (cmd.ExecuteNonQuery)
    sql 常用的语句(sql 创建表结构 修改列 清空表)
  • 原文地址:https://www.cnblogs.com/jerrypro/p/6409382.html
Copyright © 2020-2023  润新知