에 LeftJoin를 Mime으로 찾기 :내가 3 개 모델이 CakePHP의
- 사용자를
- 처럼 포스트
등 user_id
및 post_id
(에 CakePHP의 규칙을 사용하여 2 외래 키 세트가 있습니다 다른 두 모델의 id
열).
외래 키에 조건이있는 Post
의 SQL에서 LEFT JOIN
이 마임 인 찾기를 실행하고 싶습니다. 상세
내가 원하는 :
- 1 : 모든 게시물.
- 1a : 게시물에 사용자 XXX 님과 같은 게시물이있는 경우 결과에 포함 시키길 원합니다.
- 1b : 게시물에 -> 좋아요 속성이 없습니다.
그래서, 내가이 작업을 수행 할 경우 : $ 게시물에
$posts = $this->Post->find('all');
내가 모든 게시물 있고, 각 게시물에 대한 모든 좋아. 내가 좋아하는 뭔가를 작성해야 같은 책을 읽고
는, 느낌 :
$options['joins'] = array(
array('table' => 'likes',
'alias' => 'Likes',
'type' => 'LEFT',
'conditions' => array(
'Post.id = Likes.post_id',
'Likes.user_id = 536f6a29-babc-4724-a74d-2ce100000000'
)
)
);
$posts = $this->Post->find('all', $options);
을하지만이 작동하지 않습니다.
희망이 있습니다.
당신이 발생하는 문제가 무엇인지 이미 시도하고 무엇을 우리에게 보여 컨트롤러 필요가 없다. – Thibault
책에서 조인과 '컨테이너'동작을 확인하십시오. 그들은 당신을 도울 수 있습니다 : http://book.cakephp.org/2.0/en/models/associations-linking-models-together.html; http://book.cakephp.org/2.0/en/core-libraries/behaviors/containable.html – Eagle