在 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