2013-01-02 5 views
0

cakephp 2.1을 사용하고 다음과 같이 3 개의 테이블을 정의했습니다.CakePHP 2.1 사용자 정의 페이지 매김

`industries(id, name);` 
    `movies(id, name, industry_id),` 
    `trailers(id, name, movie_id);` 

특정 업계의 트레일러를 페이지 매기기를 원합니다. 그래서 내가 작성한 코드는 다음과 같습니다 : 나는 'Trailer'에 대한 'limit'를 지정한다면, 내가 올바른 결과 수 있지만 트레일러를 포함하지 않는 영화에 대한 몇 가지 null 배열을 얻을

$this->paginate = array(
        'Industry' => array(
         'contain' => array(
          'Movie' => array(
           'order' => 'Movie.release DESC', 
           'Trailer' => array(
            'conditions' => array(
             'Trailer.id !=' => $trailer_id 
            ) 
           ) 
          ) 
         ), 
         'conditions' => array(
          'Industry.id' => $id 
         ) 
        ) 
       ); 

. 특정 산업 분야의 예고편 수를 알려주십시오. 작품은 가장 높이 평가 될 것입니다.

답변

1

contain 키가 잘못된 위치에있는 것처럼 보입니다. 그것은 모델보다 먼저 정의되어야합니다.

<?php 
$this->paginate = array(
    'contain' => array(
    'Industry' => array(
     'Movie' => array(
     'order' => 'Movie.release DESC', 
     'Trailer' => array(
      'conditions' => array(
      'Trailer.id !=' => $trailer_id 
     ) 
     ) 
    ) 
    ) 
), 
    'conditions' => array(
     'Industry.id' => $id 
) 
); 
관련 문제