2011-04-29 3 views
8

yii의 CGridView$ 행을 사용하여 현재 행 번호를 가져올 수 있습니다. 그러나 현재 페이지 내의 행 인덱스 만 반환합니다. 필자가 정말로 필요로하는 것은 모든 페이지에서 절대 행 번호를 얻는 것입니다.그리드의 절대 행 번호 얻기

나는 yii를 사용하고 있으므로 내 꿈은 쉽게 이루어질 수 있으므로 데이터 제공 업체에 특별한 필드를 추가하거나 호출기에 액세스하여 현재 페이지 번호를 얻고 그 결과를 곱하면된다는 생각이 들지 않습니다. 숫자는 bla bla bla입니다.

감사합니다.

+0

입니다. 나는 호기심이있다 : 어떤 목적으로 이것을 필요로 하는가? 귀하의 문제가 DataProvider에 위치하기 때문에 약간의 사용자 정의 코드가 필요하다고 생각합니다 (CGridView가 아닌 ​​페이지 매김을 수행함). – joostdevries

+0

@ DV98 여러분의 의견과 DataProvider에 대한 정보에 감사드립니다. 그리드에 시퀀스 번호를 추가하기 만하면됩니다. 공정한 데요? – mmonem

답변

28

해결 했습니까? 그렇지 않으면, 나는 당신에게

$this->widget(
    'zii.widgets.grid.CGridView', 
    array(
    'columns'=>array(
     array(
     'header'=>'No.', 
     'value'=>'$this->grid->dataProvider->pagination->currentPage * $this->grid->dataProvider->pagination->pageSize + ($row+1)', 
    ), 
    ), 
)); 

은 기본적으로 당신이 dataProvider의 currentpage 및 페이지 크기 변수에 액세스 할 수있는 다음과 같은 솔루션을 제공하고 전체 데이터에 대한 '행 번호'를 계산하는 데 사용합니다. 왜 $ row + 1입니까? $ 행이 도움이 0 희망에서 시작하기 때문에 : D

+1

매우 helful 한 감사 @ ZaQ – nu6A

+0

챔피언, 챔피언 – surfer190

+0

나는 2016 년에 여기에 충격적인 커스텀 @ – Davuz