Как установить лимит на количество записей на странице (пагинация) в GridView Yii2?
есть Gridview на странице
<?= GridView::widget([
'dataProvider' => $dataProvider,
'columns' => [
['class' => 'yii\grid\SerialColumn'],
'id',
'name',
'corpusname',
['class' => 'yii\grid\ActionColumn'],
],
]); ?>
и метод в модели собирающий $dataProvider
public function searchUserCorpusAllocate($params, $userId)
{
$query = Company::find()
->from(Company::tableName() . ' c')
->select('c.id, c.inn as inn, c.name as name,cor.name as corpusname, c.municipality_id')
->leftJoin(ExpertCompanyCorpus::tableName() . ' as ec', 'ec.company_id=c.id')
->leftJoin(Corpus::tableName() . ' as cor', 'ec.corpus_id=cor.id')
->where('ec.id IS NOT NULL');
// add conditions that should always apply here
$dataProvider = new ActiveDataProvider([
'query' => $query,
'pagination' => [
'pageSizeLimit' => 10,
],
]);
//pr2($dataProvider);
$this->load($params);
if (!$this->validate()) {
// uncomment the following line if you do not want to return any records when validation fails
// $query->where('0=1');
return $dataProvider;
}
// grid filtering conditions
$query->andFilterWhere([
'c.id' => $this->id,
'ec.user_id' => $userId,
'c.municipality_id' => $this->municipality_id
]);
$query->andFilterWhere(['like', 'inn', $this->inn]);
$names = explode(' ', $this->name);
foreach ($names as $curName) {
$query->andFilterWhere(['like', 'c.name', $curName]);
}
return $dataProvider;
}
в настройках $dataProvider я добавил
'pagination' => [
'pageSizeLimit' => 10,
],
но в таблицу все-равно выводится только одна запись.
как вывести все ? и добавить пагинацию?
