2009-06-22 6 views
4
<?php 
class AlbumsController extends AppController { 
    var $name = 'Albums'; 

    function view($id = null) { 
     $this->Album->id = $id; 
     $this->set('tracks', $this->Album->read()); 
    } 
} 
?> 

뷰 기능에 페이지 매김을 적용하는 방법이 궁금합니다.CakePHP의 특정 기능에 대한 페이지 매김을 어떻게 커스터마이징합니까?

var $paginate = array(
    'limit' => 8,   
    'order' => array(
    'Album.catalog_no' => 'ASC' 
    ) 
); 

function index() { 
    $this->Album->recursive = 0; 
    $this->set('albums', $this->paginate()); 
} 

하지만 손실의 비트에있어 위의보기 기능에 적용 : 나는 같은 것을 위해 밖으로 일이있어. 감사!

답변

2

나는 당신이 특정 앨범의 모든 트랙을 페이지를 매기해야 할 가정이 당신이 무엇을 요구하지 않은 경우

<?php 
class AlbumsController extends AppController 
{ 
    var $name = 'Albums'; 
    var $paginate = array 
     (
      'Track' => array 
      (
       'limit' => 8, 
       'recursive' => -1, // optional, see what you get when you remove it 
       'order' => array('Track.yourOrderField' => 'ASC') 
       /* other conditions... */ 
      ) 
     ); 


    function view($id = null) 
    { 
      $this->paginate['Track']['conditions'] = array('Track.album_id' => $id); 
      $this->set('tracks', $this->paginate('Track')); 
    } 
} 
?> 

이 날 그래서 그것을 고칠 수 알려 주시기 바랍니다. ;)

+0

감사합니다. 변경해야 할 것은 "var $ paginate = = array"뿐입니다. 두 번째 등호를 제거하면됩니다. 그것보다 완벽하게 작동합니다. –

+0

우리가 간다 .. .. :) –

관련 문제