2013-12-08 5 views
0

소유자, 책 및 작성자라는 두 개의 테이블이 있습니다. 각 소유자에게는 많은 책이 있으며 각 책에는 한 명 또는 여러 명의 작가가 있습니다. 하나의 쿼리를 실행하여 소유자의 ID를 제공하고 모든 책과 저자 목록을 되찾고 싶습니다. 나는 반환 된 객체가Zend 행이 포함 된 행으로 여러 테이블 조인

$obj->first_name 
$obj->last_name 
$obj->books 

그리고 그 자체가

$obj->books->title 
$obj->books->authors 

그리고 $를 OBJ> 도서 -> 저자 자신의 이름과 이름을했다가 다음 $를 OBJ> 책 같은 것을 가지고 바라고 .

나를 위해 튜토리얼을 직접 안내해 주실 수 있습니까? 내가 조인을 사용해야한다는 것을 알고 있지만, 그것을 사용할 때 모든 것을 하나의 객체로 짜내는 결과를 낳습니다.

감사합니다.

답변

1

Zend 프레임 워크 2의 테이블 조인은 Zend 프레임 워크 버전 1+과 비슷하지만 Zendframework 2에서는 TableGateway를 사용하여 테이블을 조작 할 수 있습니다. 다음 코드가 도움이되기를 바랍니다.

$select = $this->tableGateway->getSql()->select(); 

    $select->join('joining_tbl_name', 'tbl_name_belongs_to_this_model.book_id = joining_tbl_name.book_id', array('*'), 'joining_type'); 

    $select->where(array('tbl_name_belongs_to_this_model.owners_id' => {owner_id_value})); 

    $resultSet = $this->tableGateway->selectWith($select); 

    return $resultSet; 
+0

위대한! 그게 효과가 있었어! 감사합니다 – Kousha

+0

답장을 보내 주셔서 감사합니다. 이 답변이 잘 작동하면 친절하게 저에게 투표하십시오. – KumarA