Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot get data from ActiveDataProvider added by setModels() when batchSize is used after first page #375

Open
vatavale opened this issue Dec 1, 2023 · 0 comments

Comments

@vatavale
Copy link

vatavale commented Dec 1, 2023

I have an ActiveDataProvider

$dataProvider = new ActiveDataProvider([
    'query' => $query,
    'pagination' => [
       'pageSize' => 20,
    ]
]);

// Add some data to the dataProvider
$models = $dataProvider->getModels();
foreach ($models as $key => $model) {
   $models[$key]['saleTicket'] = SaleTicket::findOne($model['id']);
}
$dataProvider->setModels($models);

In the view file I successfuly use $model['saleTicket'] data in the Yii-Grid at any page (using pagination).

But in the Yii-Export this additional $model['saleTicket'] available only at the "first page" of the export with batchSize. After first batch I've got only "query" data.

    $exportProvider = clone $dataProvider;
    $exportProvider->pagination = clone $dataProvider->pagination;
    $exportProvider->pagination->page = 0;
    $exportProvider->pagination->pageSize = 50;
    $fullExportMenu = ExportMenu::widget([
        'dataProvider' => $exportProvider,
        'batchSize' => 50,
        'columns' => $gridColumns,
        'clearBuffers' => true,
    ]);

Expected behavior

All data should be available at the export with batchSize.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant