校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > YII2框架中ActiveDataProvider與GridView的配合使用操作示例

YII2框架中ActiveDataProvider與GridView的配合使用操作示例

熱門標簽:南寧電話外呼系統線路 咸陽電銷 南京3D地圖標注 嘟嘟云外呼系統 辦理400電話哪家好點 正規電銷機器人系統 邢臺400電話辦理 重慶外呼電銷系統多少錢 濟源百應電銷機器人聯系方式

本文實例講述了YII2框架中ActiveDataProvider與GridView的配合使用操作。分享給大家供大家參考,具體如下:

YII2中ActiveDataProvider可以使用yii\db\Query或yii\db\ActiveQuery的對象,方便我們構造復雜的查詢篩選語句。

配合強大的GridView,快速的顯示我們想要的數據。

通過上面的兩個工具,我們快速的顯示用戶表信息。用戶表結構如下:

我們創建一個用戶模型MyUser.php,代碼如下:

?php

namespace app\models;

use yii\db\ActiveRecord;
use yii\data\ActiveDataProvider;

class MyUser extends ActiveRecord
{

  //返回要操作的表名
  public static function tableName()
  {
    return '{{%user}}';
  }

  //設置規則
  //注意,如果沒有給字段設置規則,GridView的篩選項是不會出現的
  public function rules()
  {
    return [
      [['id', 'name', 'sex', 'age'], 'trim'],
      [['id', 'sex', 'age'], 'integer'],
      ['name', 'string'],
    ];
  }

  //查詢
  public function search($params)
  {
    //首先我們先獲取一個ActiveQuery
    $query = self::find();
    //然后創建一個ActiveDataProvider對象
    $provider = new ActiveDataProvider([
      //為ActiveDataProvider對象提供一個查詢對象
      'query' => $query,
      //設置分頁參數
      'pagination' => [
        //分頁大小
        'pageSize' => 3,
        //設置地址欄當前頁數參數名
        'pageParam' => 'p',
        //設置地址欄分頁大小參數名
        'pageSizeParam' => 'pageSize',
      ],
      //設置排序
      'sort' => [
        //默認排序方式
        'defaultOrder' => [
          'id' => SORT_DESC,
        ],
        //參與排序的字段
        'attributes' => [
          'id', 'name', 'sex', 'age'
        ],
      ],
    ]);

    //如果驗證沒通過,直接返回
    if (!($this->load($params)  $this->validate())) {
      return $provider;
    }

    //增加過濾條件
    $query->andFilterWhere(['id' => $this->id])
      ->andFilterWhere(['like', 'name', $this->name])
      ->andFilterWhere(['sex' => $this->sex])
      ->andFilterWhere(['age' => $this->age]);

    return $provider;
  }
}

然后,創建控制器TestController.php,代碼如下:

?php

namespace app\controllers;

use YII;
use yii\web\Controller;
use app\models\MyUser;

class TestController extends Controller
{
  public function actionTest()
  {

    $user = new MyUser();
    //調用模型search方法,把get參數傳進去
    $provider = $user->search(YII::$app->request->get());

    return $this->render('test', [
      'model' => $user,
      'provider' => $provider,
    ]);
  }
}

視圖頁面test.php,代碼如下:

?php
use yii\helpers\Url;
use yii\helpers\Html;
use yii\grid\GridView;
?>

div id="page-wrapper">
  div class="row">
    div class="col-lg-12">
      button class="btn btn-primary" id="showSelBtn">顯示我選中的/button>
    /div>
  /div>
  div class="row">
    div class="col-lg-12">
      ?php echo GridView::widget([
        //設置GridView的ID
        'id' => 'myUserGridView',
        //設置數據提供器
        'dataProvider' => $provider,
        //設置篩選模型
        'filterModel' => $model,
        'columns' => [
          //復選框列
          ['class' => 'yii\grid\CheckboxColumn'],
          //顯示序號列
          ['class' => 'yii\grid\SerialColumn'],
          [
            //設置字段顯示標題
            'label' => 'ID',
            //字段名
            'attribute' => 'id',
            //格式化
            'format' => 'raw',
            //設置單元格樣式
            'headerOptions' => [
              'style' => 'width:120px;',
            ],
          ],
          [
            'label' => '姓名',
            'attribute' => 'name',
            'format' => 'raw',
          ],
          [
            'label' => '頭像',
            'attribute' => 'head_img',
            'format' => 'raw',
            //通過該返回值,我們可以任意控制列數據的顯示
            //$data指向的是當前行的數據結果集
            'value' => function ($data) {
              return 'img src="' . '/' . ltrim($data->head_img, '/') . '" width="60px">';
            },
          ],
          [
            'label' => '性別',
            //設置篩選選項
            'filter' => [0 => '男', 1 => '女'],
            'attribute' => 'sex',
            'format' => 'raw',
            'value' => function ($data) {
              return ($data->sex == 0) ? '男' : '女';
            }
          ],
          [
            'label' => '年齡',
            'attribute' => 'age',
            'format' => 'raw',
          ],
          [
            'header' => '操作',
            'class' => 'yii\grid\ActionColumn',
            //設置顯示模板
            'template' => '{upd} {del}',
            //下面的按鈕設置,與上面的模板設置相關聯
            'buttons' => [
              'upd' => function ($url, $model, $key) {
                return 'a href="' . Url::toRoute(['test/upd', 'id' => $key]) . '" rel="external nofollow" class="btn btn-warning">修改/a>';
              },
              'del' => function ($url, $model, $key) {
                return 'a href="' . Url::toRoute(['test/del', 'id' => $key]) . '" rel="external nofollow" class="btn btn-danger">刪除/a>';
              },
            ],
          ],
        ],
      ]); ?>
    /div>
  /div>
/div>

?php echo Html::jsFile('@web/js/jquery-3.3.1.min.js'); ?>
script type="text/javascript">
  $("#showSelBtn").on("click", function () {
    var keys = $("#myUserGridView").yiiGridView('getSelectedRows');
    alert(keys);
  });
/script>

顯示結果如下:

更多關于Yii相關內容感興趣的讀者可查看本站專題:《Yii框架入門及常用技巧總結》、《php優秀開發框架總結》、《smarty模板入門基礎教程》、《php面向對象程序設計入門教程》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》

希望本文所述對大家基于Yii框架的PHP程序設計有所幫助。

您可能感興趣的文章:
  • Yii中CArrayDataProvider和CActiveDataProvider區別實例分析
  • 淺析Yii2中GridView常見操作
  • yii2.0之GridView自定義按鈕和鏈接用法
  • Yii2 GridView實現列表頁直接修改數據的方法
  • 淺析Yii2 gridview實現批量刪除教程
  • 淺析Yii2 GridView實現下拉搜索教程
  • 淺析Yii2 GridView 日期格式化并實現日期可搜索教程
  • yii2使用GridView實現數據全選及批量刪除按鈕示例
  • yii2中結合gridview如何使用modal彈窗實例代碼詳解
  • yii2使用gridView實現下拉列表篩選數據
  • Yii2.0小部件GridView(兩表聯查/搜索/分頁)功能的實現代碼
  • yii2-GridView在開發中常用的功能及技巧總結

標簽:通遼 南通 河南 唐山 隴南 黃山 武漢 平頂山

巨人網絡通訊聲明:本文標題《YII2框架中ActiveDataProvider與GridView的配合使用操作示例》,本文關鍵詞  YII2,框架,中,ActiveDataProvider,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《YII2框架中ActiveDataProvider與GridView的配合使用操作示例》相關的同類信息!
  • 本頁收集關于YII2框架中ActiveDataProvider與GridView的配合使用操作示例的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    免费看欧美女人艹b| 欧美在线观看视频一区二区| 99久久久免费精品国产一区二区| 欧美亚洲一区二区在线| 国产女主播视频一区二区| 亚洲 欧美综合在线网络| 成人免费高清视频在线观看| 日韩精品一区二区在线| 亚洲午夜一区二区| 99久久综合国产精品| 欧美精品一区二区蜜臀亚洲| 亚洲午夜日本在线观看| 不卡av电影在线播放| 久久久久久久久免费| 奇米精品一区二区三区在线观看| 色婷婷久久久久swag精品| 国产精品免费av| 国产麻豆欧美日韩一区| 欧美大胆一级视频| 日韩综合一区二区| 欧美日韩精品三区| 亚洲自拍偷拍九九九| 色欧美乱欧美15图片| 亚洲欧美一区二区久久| 成人动漫精品一区二区| 国产精品伦理在线| 国产91色综合久久免费分享| 欧美精品一区二区三| 国产在线一区二区| 久久青草国产手机看片福利盒子| 紧缚捆绑精品一区二区| 精品国产一区二区三区久久影院| 毛片av中文字幕一区二区| 日韩精品专区在线影院重磅| 激情丁香综合五月| 国产香蕉久久精品综合网| 国产成人亚洲综合a∨婷婷图片| 国产亚洲一区二区三区| 成人免费av资源| 亚洲蜜臀av乱码久久精品蜜桃| 色综合中文字幕国产 | 99久久精品久久久久久清纯| 中文字幕精品综合| 91视视频在线观看入口直接观看www | 自拍偷拍欧美激情| 97se亚洲国产综合在线| 亚洲激情网站免费观看| 在线国产亚洲欧美| 另类人妖一区二区av| 欧美精品一区二区精品网| 国模娜娜一区二区三区| 中文字幕一区在线| 欧洲一区二区三区在线| 美女精品一区二区| 国产日产亚洲精品系列| 日本乱人伦一区| 美国十次综合导航| 国产精品你懂的| 欧美美女激情18p| 国产sm精品调教视频网站| 亚洲精品乱码久久久久久| 欧美一二三区在线| 99久久国产综合精品女不卡| 亚洲大片精品永久免费| 久久久久国产一区二区三区四区 | 日韩色在线观看| 成人永久看片免费视频天堂| 午夜久久久久久久久| 国产清纯白嫩初高生在线观看91| 色悠悠久久综合| 国产精品一品视频| 婷婷综合久久一区二区三区| 国产精品毛片久久久久久| 欧美日韩第一区日日骚| 波多野结衣视频一区| 久久99蜜桃精品| 一区二区三区四区亚洲| 久久久不卡网国产精品二区| 欧美视频精品在线| 成人高清免费观看| 激情综合色播五月| 亚洲线精品一区二区三区八戒| 国产欧美一区二区精品婷婷| 538在线一区二区精品国产| 成人激情av网| 国产精品综合二区| 蜜臀av一区二区| 亚洲在线免费播放| 1024精品合集| 欧美国产日本视频| 精品国偷自产国产一区| 欧美亚洲综合在线| 成人激情校园春色| 国产一区欧美一区| 久久精品国产一区二区三 | 亚洲欧洲成人av每日更新| 欧美电影免费观看高清完整版在 | 国产精品嫩草影院com| 2021国产精品久久精品| 日韩精品专区在线| 日韩一区二区三区在线观看| 欧美年轻男男videosbes| 色综合色狠狠天天综合色| 9人人澡人人爽人人精品| 国产一区不卡在线| 国产在线不卡一区| 麻豆精品精品国产自在97香蕉| 一区二区三区电影在线播| 亚洲欧美区自拍先锋| 综合在线观看色| 中文字幕字幕中文在线中不卡视频| 精品美女一区二区| 精品少妇一区二区三区视频免付费| 欧美一区二区三区小说| 91精品国产综合久久久久久久久久| 欧美亚洲免费在线一区| 91国偷自产一区二区三区观看| 色综合久久久久| 欧美午夜片在线观看| 欧美丰满少妇xxxbbb| 日韩欧美激情四射| 久久久国产精华| 国产精品传媒视频| 夜夜爽夜夜爽精品视频| 天天色图综合网| 美女视频网站久久| 国产麻豆欧美日韩一区| 成人免费看黄yyy456| 色综合咪咪久久| 欧美日韩高清一区二区不卡| 日韩欧美在线网站| 久久久欧美精品sm网站| 国产精品美女www爽爽爽| 一区二区三区精品久久久| 午夜成人免费电影| 加勒比av一区二区| 91原创在线视频| 91精品国产一区二区三区蜜臀| 精品日韩在线观看| 中文字幕av一区二区三区高| 亚洲免费在线视频一区 二区| 亚洲国产人成综合网站| 精品在线视频一区| 成人一二三区视频| 9191成人精品久久| 国产欧美日韩精品一区| 一区二区三区不卡视频| 久久99精品国产.久久久久久 | 欧美日韩在线播放三区四区| 日韩免费高清av| 国产精品不卡在线观看| 日本亚洲欧美天堂免费| 成人美女视频在线看| 欧美日韩成人一区二区| 国产日产欧美一区二区三区 | 黄一区二区三区| 91丨国产丨九色丨pron| 日韩午夜电影av| 一区在线播放视频| 精久久久久久久久久久| 日本高清无吗v一区| 日韩一级免费一区| 又紧又大又爽精品一区二区| 激情成人午夜视频| 欧美日本在线一区| 成人欧美一区二区三区1314 | 91免费视频观看| 精品国产乱码久久久久久浪潮| 亚洲黄色片在线观看| 国产在线精品一区二区不卡了| 欧美体内she精视频| 国产女人18水真多18精品一级做 | 精品国产一区a| 亚洲国产人成综合网站| 波多野结衣精品在线| 久久麻豆一区二区| 日韩精品免费专区| 色94色欧美sute亚洲线路一久| 国产精品久久久久三级| 国产伦精品一区二区三区免费迷| 8v天堂国产在线一区二区| 中文字幕中文字幕一区| 成人激情av网| 中文字幕第一区综合| 国产二区国产一区在线观看| 日韩欧美电影在线| 免费av网站大全久久| 欧美精品18+| 丝瓜av网站精品一区二区| 一本色道综合亚洲| 亚洲久本草在线中文字幕| 成人网在线播放| 国产网站一区二区| 国产一区二区伦理| 久久影院午夜片一区| 国模少妇一区二区三区| 久久美女高清视频| 成人性生交大片免费看在线播放| 国产日本亚洲高清| 国产精品白丝jk白祙喷水网站|