1.view模版中使用

  GridView::widget([
        'dataProvider' => $dataProvider,
        'filterModel' => $searchModel,
        'columns' => [
            ['class' => 'yii\grid\SerialColumn'],

            'id',
            ['attribute'=>'title','headerOptions' => ['width' => '250'],],
            'url:url',
            
            [
                'attribute'=>'type',
                'value' => function ($data) {
                    return '';
                },
                'filter' => '',//是否添加过滤器(本字段的搜索框)
            ],
            [
                'attribute'=>'status',
                'value' => function ($data) {
                    return $data->status?'正常':'不正常';
                },
                'filter' => '',
            ],
            [
               'attribute'=>'created',
                   'value'=>function(){
                        return Yii::$app->user->identity->username;
                    },
                    'filter'=>'',
            ],
             'ctime':datetime',

            ['class' => 'yii\grid\ActionColumn','header' => '操作','template'=>'{update} {delete}'],
        ],
    ]);

2.controller中

        $searchModel = new PostSearch;
        $dataProvider = $searchModel->search(Yii::$app->request->getQueryParams());
        return $this->render('index', [
            'dataProvider' => $dataProvider,
            'searchModel' => $searchModel,
        ]);

3.model中

    public function search($params)
    {
        $query = Post::find();
        //$query->joinWith(['user']); // 添加关联条件
        $dataProvider = new ActiveDataProvider([
            'query' => $query,
            'sort'=>['defaultOrder'=>['ctime' => SORT_DESC]]
        ]);
        if (!($this->load($params) && $this->validate())) {
            return $dataProvider;
        }

        $query->andFilterWhere([
            'id' => $this->id,
            [...]
        ]);

        $query->andFilterWhere(['like', 'title', $this->title])->[...];

        return $dataProvider;
    }

 

posted on 2015-04-02 12:08  浊浊然  阅读(445)  评论(0编辑  收藏  举报