2014-03-30 1 views
0

내 웹 페이지에서 무한 스크롤을 추가 한 후에 다른 페이지에 같은 행이 표시되는 경우가 있습니다. 다음 코드를 사용했습니다.Yii 무한 스크롤에서 동일한 행 반복을 비활성화하려면 어떻게합니까?

<?php $this->widget('ext.yiinfinite-scroll.YiinfiniteScroller', array(
'contentSelector' => '#posts', 
'itemSelector' => 'div.post', 
'loadingText' => 'Loading...', 
'donetext' => 'Data loading end', 
'pages' => $pages, 
)); ?> 

동일한 행 반복을 어떻게 비활성화합니까?

답변

0

무한 스크롤 (그리고 yii-infinite scroll)은 404 오류가 발생할 때 서버를 쿼리하는 것을 중지합니다. 다음 페이지. Yii 프레임 워크는 결과보다 큰 페이지 번호의 마지막 결과를 계속 반환합니다.

결과의 마지막에 중복 된 행이 표시되는 것을 방지하기 위해이 코드 조각을 컨트롤러의 해당 작업에 추가하지 마십시오. Model_page

if(isset($_GET['Model_page'])){ 
    if($model->search()->pagination->pageCount < $_GET['Model_page']+1){ 
     throw new CHttpException(404,'No More results'); 
    } 
} 

Post_page 등이 모델 이름에 따라 당신이 다른 dataProvider가 선언 된 후 바로 그것을 사용하십시오 경우 $model->search(), 당신의 dataProvider이다 치환 될 수있다.