成人精品一区二区三区中文字幕-成人精品一区二区三区-成人精品一级毛片-成人精品亚洲-日本在线视频一区二区-日本在线视频免费

導航首頁 ? 技術教程 ? Yii2框架之ListView小部件的使用方法
全站頭部文字 我要出現在這里
Yii2框架之ListView小部件的使用方法 882 2023-12-10   

ListView是yii框架中類似GridView,也是用于展示多條數據的小部件,相比GridView,ListView可以更加靈活地設置數據展示的格式。

下面以我自己做的一個使用ListView來展示數據的例子,來簡單講解一下ListView小部件的使用。

首先需要在控制器中new一個數據提供器,傳給視圖,示例代碼如下:

public function actionIndex() {
  $dataProvider = new ActiveDataProvider([
    'query' => Diary::find()->orderBy('day'),
    'pagination' => [//分頁
      'pagesize' => 4
    ]
  ]);
  return $this->render('index', [
    'dataProvider' => $dataProvider
  ]);
}

接下來就是在視圖文件中使用ListView來展示數據了,示例代碼如下:

<?= ListView::widget([
  'dataProvider' => $dataProvider,//數據提供器
  'itemView' => '_diary',//指定item視圖(該視圖文件與當前視圖在同一個目錄下)
  'viewParams' => [//傳參數給每一個item
    'moodCfg' => Mood::getAll()
  ],
  'layout' => '{items}<div class="col-lg-12 sum-pager">{summary}{pager}</div>',//整個ListView布局
  'itemOptions' => [//針對渲染的單個item
    'tag' => 'div',
    'class' => 'col-lg-3'
  ],
  /*
  'options' => [//針對整個ListView
    'tag' => 'div',
    'class' => 'col-lg-3'
  ],
  */
  'pager' => [
    //'options' => ['class' => 'hidden'],//關閉分頁(默認開啟)
    /* 分頁按鈕設置 */
    'maxButtonCount' => 5,//最多顯示幾個分頁按鈕
    'firstPageLabel' => '首頁',
    'prevPageLabel' => '上一頁',
    'nextPageLabel' => '下一頁',
    'lastPageLabel' => '尾頁'
  ]
]);?>

這里說明一下,由于ListView和GridView繼承于同一個父類BaseListView,所以有很多設置參數是一樣的,可以通過參考GridView的參數設置來設置ListView。

最后就是在ListView的'itemView'參數指定的視圖文件中來編寫每一條數據的展示格式了,示例代碼如下:

<div class="item">
  <h4 style="font-weight:bold"><?= Html::encode($model->title ? $model->title : '(無題)') ?></h4>
   
  <p style="font-size:13px">
    <span style="color:orangered"><?= date('Y.m.d', $model->day) ?></span><br>
    <span style="color:#999">心情:<?= $moodCfg[$model->mood] ?></span>//這里訪問ListView的'viewParams'參數傳過來的參數$moodCfg
  </p>
   
  <div style="margin:15px 0">
        
    <?php echo HtmlPurifier::process(mb_substr($model->content, 0, 25).'......'); ?>
  </div>
   
  <p class="info">
    添加:<?= date('Y-m-d H:i:s', $model->created_at) ?><br>
    最后修改:<?= date('Y-m-d H:i:s', $model->updated_at) ?>
  </p>
   
  <div style="text-align:right">
    <?= Html::a('<span class="glyphicon glyphicon-eye-open"></span>', ['view', 'id' => $model->id], ['title' => '查看']) ?>
    <?= Html::a('<span class="glyphicon glyphicon-pencil"></span>', ['upcreate', 'id' => $model->id], ['title' => '修改']) ?>
    <?= Html::a('<span class="glyphicon glyphicon-trash"></span>', ['delete', 'id' => $model->id], [
      'title' => '刪除',
      'data' => [
        'confirm' => '您確定真的要刪除 '.date('Y年m月d日', $model->day).' 的日記嗎?',
        'method' => 'post',
      ]
    ]) ?>
  </div>
</div>

最后的最后,效果圖展示時間(略丑,勿怪):

查看圖片

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持綠夏網。


主站蜘蛛池模板: av午夜| 经典伦理电影| 老五| 林采薇| 阿尔法变频器说明书| 视频偷窥| 怀孕吃什么| 间宫祥太朗| 王艺潼| 春天的芭蕾歌词| 大内密探零零发演员表| 削发| 北京卫视节目单今天| 大学英语精读3第三版全书答案| 《欲望中的女人》| 伤感的头像| 原野电影| 詹姆斯怀特| 可可托海的牧羊人原唱歌曲| 国内自拍99| 经视直播| 梦桐| 成都屏蔽机柜厂| 行尸走肉电影| 周华健朋友一生一起走的歌词| 情欲禁地| 成龙游戏| 免费看污污的视频| 女生被艹网站| 追捕渣滓洞刽子手电视剧全集在线观看| 男保姆| 超人演员| midjourney中文版| 拥抱星星的月亮演员表| 瑜伽焰口全集 简体字| 苏西| 《灿烂的季节》大结局| 找到你 电影| 林岚| 误杀2剧情| 竹内纱里奈全部aⅴ在线看|

!!!站長長期在線接!!!

網站、小程序:定制開發/二次開發/仿制開發等

各種疑難雜癥解決/定制接口/定制采集等

站長微信:lxwl520520

站長QQ:1737366103