在 ListView 小部件使用数据提供者显示数据。每个模型都使用指定的视图文件渲染。
第1步 - 使用以下这种方式修改actionDataWidget()方法。
public function actionDataWidget() { $dataProvider = new ActiveDataProvider([ 'query' => MyUser::find(), 'pagination' => [ 'pageSize' => 20, ], ]); return $this->render('datawidget', [ 'dataProvider' => $dataProvider ]); }
在上面的代码中,我们创建了一个数据提供者,并把它传递给数据小工具(datawidget)视图。
第2步 - 使用以下这种方式修改 views/site/datawidget.php 视图文件。
<?php use yii\widgets\ListView; echo ListView::widget([ 'dataProvider' => $dataProvider, 'itemView' => '_user', ]); ?>
当我们呈现 ListView 小部件。每个模型都在 _user 视图渲染。
第3步 - 在 views/site 目录下创建一个 _user.php 视图文件。
<?php use yii\helpers\Html; use yii\helpers\HtmlPurifier; ?> <div class = "user"> <?= $model->id ?> <?= Html::encode($model->name) ?> <?= HtmlPurifier::process($model->email) ?> </div>
上一篇:
Yii数据Widgets
下一篇:
Yii GridView Widget