这篇文章将为大家详细讲解有关SqlDataProvider怎么在Yii2中使用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
创新互联建站服务项目包括湘潭网站建设、湘潭网站制作、湘潭网页制作以及湘潭网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,湘潭网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到湘潭省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!第一种方法:
$totalCount = Yii::$app->db->createCommand('SELECT COUNT(*) FROM posts WHERE publish=:publish', [':publish' => 1]) ->queryScalar(); $dataProvider = new SqlDataProvider([ 'sql' => 'SELECT * FROM posts WHERE publish=:publish', 'params' => [':publish' => 1], 'totalCount' => $totalCount, //'sort' =>false, to remove the table header sorting 'sort' => [ 'attributes' => [ 'title' => [ 'asc' => ['title' => SORT_ASC], 'desc' => ['title' => SORT_DESC], 'default' => SORT_DESC, 'label' => 'Post Title', ], 'author' => [ 'asc' => ['author' => SORT_ASC], 'desc' => ['author' => SORT_DESC], 'default' => SORT_DESC, 'label' => 'Name', ], 'created_on' ], ], 'pagination' => [ 'pageSize' => 10, ], ]); return $dataProvider;
第二种:
= GridView::widget([ 'dataProvider' => $dataProvider, 'columns' => [ ['class' => 'yii\grid\SerialColumn'], [ 'label' =>"Name", 'attribute' => 'tbl_column_name', 'value'=>function($data){ return $data["tbl_column_name"]; } ], 'title', 'author', 'created_on', ['class' => 'yii\grid\ActionColumn'], ], ]); ?>
关于SqlDataProvider怎么在Yii2中使用就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。