2010-12-16 2 views
1

PostViewsCount의 두 가지 모델이 있다고 가정 해보십시오. 관계 유형은 1 : 1입니다.Doctrine : 일대일 관계에 합치다 ​​

$posts = PostTable::getInstance()->createQuery('p') 
    ->leftJoin('p.ViewsCount') // relation name is "ViewsCount" 
    ->orderBy('p.created_at DESC') 
    ->limit(5) 
    ->execute(); 

을하지만, 운이 없다 :

는 지금은 자신의 견해 통계 지난 5 개 게시물을 검색 할 수 있습니다. 오류가 발생합니다. 가입을 취소하면 모든 것이 정상입니다.

내 질문은 - Doctrine에서 일대일 관계를 자동으로 조인/검색하여 어떻게 추가 쿼리를 피할 수 있습니까?

답변

1

구문에 오류가 있습니다. 당신은 또한 당신은 조회수 필드를 검색 할 교리를 알려줄 필요가 :

$posts = PostTable::getInstance()->createQuery('p') 
    ->select('p.*, vc.*') 
    ->leftJoin('p.ViewsCount vc') 
    ->orderBy('p.created_at DESC') 
    ->limit(5) 
    ->execute(); 
+0

감사하지만 도움이되지 않았습니다. 이제 수화에 대한 또 다른 오류가 발생합니다. – Darmen

+0

오류 메시지가 무엇인지 알아두면 유용 할 것입니다. –

+0

괜찮습니다. 고마워요! – Darmen

0

이다가 제대로 관계를 정의해야합니다 것 같다. 각 모델에 대해 유형 키 (유형 : 1)와 관계를 정의합니다.

+0

분명히, 나는 그렇게했다. :) – Darmen