2016-11-22 2 views
1

dataProvider 내 모델 위치를 얻으려고합니다. 나는 호출기와 목록보기 있습니다ActiveDataProvider, Yii2에서 모델 색인 가져 오기

Pjax::begin(); 
       echo ListView::widget([ 
        'dataProvider' => $dataProvider, 
        'itemOptions' => ['class' => 'item'], 
        'itemView' => 'tree_part', 

        'pager' => [ 
         'class' => ScrollPager::className(), 
         'enabledExtensions'=> [ScrollPager::EXTENSION_SPINNER], 
          'spinnerSrc'=> Yii::$app->request->baseUrl.'/images/spinner.gif', 
         ] 
       ]); 
Pjax::end(); 

내가 내 부분보기 tree_part.php$model, $widget, $index에 액세스 할 수 있습니다 알고,하지만 나는 데이터 내에서 현재 $model 인덱스를 얻는 방법을 알아낼 수 없습니다.

내 dataProvider의 다음 pagesize가 12 인 경우

$dataProvider = new ActiveDataProvider([ 
     'query' => $query, 
     'sort'=> ['defaultOrder' => ['creation_date'=>SORT_DESC]], 
     'pagination' => [ 
      'pageSize' => 12, 
     ], 
    ]); 

그래서, $index 변수는 0-11의 값을 보여줍니다. 내가 필요한 것은 총 모델 수에서 "글로벌"색인을 얻는 것입니다.

모든 조언을 매우 높이 평가하겠습니다.

답변

0

가능한 해결 방법 :

$mindex = $index + ($widget->dataProvider->pagination->pageSize * $widget->dataProvider->pagination->page); 

가 어쨌든, 하나 더 찾고.