2016-08-29 7 views
0

dataproviderの最初の2つの要素を除外し、3つごとに他の要素を取得するにはどうすればよいですか?Yii2 dataprovider-exclude最初の2つの要素

1 2 3 4 5 6 7 8 9 0 10 12 13 14 
x x |  |  |  |  | 

私はあなたがすべてのモデルを検索することができ、このような結果

3 4 5 
6 7 8 
9 0 10 
12 13 14 
+0

あなたは疑問があるにも明確な..より良い説明してください – scaisEdge

答えて

0

を必要とは、あなたが望むようArrayDataProviderを使用して、これらの項目から新しいデータプロバイダを作成し、その後、PHPを使用してアイテムをフィルタリングし、その後、既存のデータプロバイダを形成します。例えば

// Some prepared data provider 
$dataProvider = $searchModel->search(Yii::$app->request->getQueryParams()); 
$dataProvider->query 
    ->orderBy(['created_at' => SORT_DESC]); 


// Retrieving all models 
$allModels = $dataProvider->getModels(); 


// Some manipulations with $allModels array 
// ... 


// Preparing new data provider from modified array of models 
$dataProvider   = new ArrayDataProvider(); 
$dataProvider->allModels = $allModels; 
$dataProvider->key  = 'id'; 
$dataProvider->pagination->setPageSize($maxRows); 
関連する問題