Yii - GridView 小部件

  • 简述

    GridView 小部件从数据提供者获取数据并以表格的形式呈现数据。表格的每一行代表一个数据项,一列代表该项的一个属性。
    第 1 步- 以这种方式修改数据小部件视图。
    
    <?php
       use yii\grid\GridView;
       echo GridView::widget([
          'dataProvider' => $dataProvider,
       ]);
    ?>
    
    第 2 步- 转到http://localhost:8080/index.php?r=site/data-widget,您将看到 DataGrid 小部件的典型用法。
    数据网格小部件
    DataGrid 小部件的列是根据yii\grid\Column类配置的。它代表一个模型属性,可以过滤和排序。
    第 3 步 - 要将自定义列添加到网格,请以这种方式修改datawidget视图。
    
    <?php
       yii\grid\GridView;
       echo GridView::widget([
          'dataProvider' => $dataProvider,
          'columns' => [
             'id',
             [
                'class' => 'yii\grid\DataColumn', // can be omitted, as it is the default
                'label' => 'Name and email',
                'value' => function ($data) {
                   return $data->name . " writes from " . $data->email;
                },
             ],
          ],
       ]);
    ?>
    
    第 4 步- 如果您转到地址http://localhost:8080/index.php?r=site/data-widget,您将看到如下图所示的输出。
    数据网格视图
    可以使用不同的列类来自定义网格列,例如 yii\grid\SerialColumn、yii\grid\ActionColumn 和 yii\grid\CheckboxColumn。
    第 5 步 -以下列方式修改datawidget视图。
    
    <?php
       use yii\grid\GridView;
       echo GridView::widget([
          'dataProvider' => $dataProvider,
          'columns' => [
             ['class' => 'yii\grid\SerialColumn'], 'name',
             ['class' => 'yii\grid\ActionColumn'],
             ['class' => 'yii\grid\CheckboxColumn'],
          ],
       ]);
    ?>
    
    第 6 步- 转到http://localhost:8080/index.php?r=site/data-widget,您将看到以下内容。
    修改后的 DataGrid 视图