/** * Sets the pagination for this data provider. * @param array|Pagination|boolean $value the pagination to be used by this data provider. * This can be one of the following: * * - a configuration array for creating the pagination object. The "class" element defaults * to 'yii\data\Pagination' * - an instance of [[Pagination]] or its subclass * - false, if pagination needs to be disabled. * * @throws InvalidParamException */ public function setPagination($value) { if (is_array($value) && !isset($value['pageSizeLimit'])) { $value['pageSizeLimit'] = [1, 100]; } parent::setPagination($value); }
public function actionLeader() { $dataProvider = Null; $searchModel = new OrderSearch(); $totalbales = 0; $query = new Query(); $dataProvider = new ActivedataProvider(['query' => Order::find(), 'pagination' => ['pageSize' => 20]]); $totalProvider = new ActiveDataProvider(['query' => Order::find()]); $totalProvider->setPagination(False); $models = $totalProvider->getModels(); foreach ($models as $item) { $totalbales += $item->number_bales; } return $this->render('leader', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider, 'totalbales' => $totalbales]); }
/** * @inheritdoc */ public function setPagination($value) { if (is_array($value)) { $config = ['class' => Pagination::className()]; if ($this->id !== null) { $config['pageParam'] = $this->id . '-page'; $config['pageSizeParam'] = $this->id . '-per-page'; } parent::setPagination(Yii::createObject(array_merge($config, $value))); } elseif ($value instanceof Pagination || $value === false) { parent::setPagination($value); } else { throw new InvalidParamException('Only Pagination instance, configuration array or false is allowed.'); } }
/** * Sets page size * @param \yii\data\ActiveDataProvider $dataProvider */ public static function setPageSize(\yii\data\ActiveDataProvider &$dataProvider, $pageSize) { $dataProvider->setPagination([$dataProvider->pagination->pageSizeParam => $pageSize]); }
public function actionTestl() { echo "sss"; $dataProvider = new ActiveDataProvider(['query' => Appcomments::find()]); //$dataProvider->keys; //$dataProvider->models; /*$dataProvider->setPagination(false); $mymodel=$dataProvider->models; foreach ($mymodel as $model){ echo $model['appid']; }*/ $pagination = $dataProvider->getPagination(); var_dump($pagination->page); $count = 0; while ($categories = $dataProvider->models) { /*foreach ($categories as $model) { $model['appid']=0; }*/ //echo $pagination->page=1+$count; $count++; $dataProvider->setPagination($count); } //$mymodel[4]['kind']="bbbbbb"; //$dataProvider->setModels($mymodel); //var_dump($dataProvider->models[4]['kind']); //echo $dataProvider->models; }
/** * Creates data provider instance with search query applied * * @param array $params * @param integer $category * @param null|string $user * @return ActiveDataProvider * @internal param int $post_type */ public function searchFront($params, $category = null) { $query = PostModel::find(); if ($category) { $query->join('left join', 'term_relationship', "term_relationship.post_id = post.id"); $query->andWhere(['term_relationship.term_id' => $category]); } $query->andWhere(['post.post_type' => 1]); $dataProvider = new ActiveDataProvider(['query' => $query]); $dataProvider->setSort(['attributes' => ArrayHelper::merge($dataProvider->sort->attributes, ['username' => ['asc' => ['username' => SORT_ASC], 'desc' => ['username' => SORT_DESC], 'label' => 'Author', 'value' => 'username']]), 'defaultOrder' => ['post_date' => SORT_DESC]]); $dataProvider->setPagination(['pageSize' => 2]); $this->load($params); if (!$this->validate()) { // uncomment the following line if you do not want to any records when validation fails // $query->where('0=1'); return $dataProvider; } return $dataProvider; }