在 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

