Yii-listview-widget

提供:Dev Guides
移動先:案内検索

Yii-ListViewウィジェット

ListViewウィジェットは、データプロバイダーを使用してデータを表示します。 各モデルは、指定されたビューファイルを使用してレンダリングされます。

ステップ1 *-この方法で actionDataWidget()*メソッドを変更します。

public function actionDataWidget() {
   $dataProvider = new ActiveDataProvider([
      'query' => MyUser::find(),
      'pagination' => [
         'pageSize' => 20,
      ],
   ]);
   return $this->render('datawidget', [
      'dataProvider' => $dataProvider
   ]);
}

上記のコードでは、データプロバイダーを作成し、それをdatawidgetビューに渡します。

  • ステップ2 *-この方法でdatawidgetビューファイルを変更します。
<?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>

ステップ4 *-Webブラウザのアドレスバーに *http://localhost:8080/index.php?r = site/data-widget と入力すると、次のように表示されます。

ListViewウィジェットの出力例