2013-06-26 3 views
0

새로운 프로젝트에 대해 CodeIgniter를 평가하기 위해 데모 응용 프로그램을 만들고 있습니다. 우리는 현재 DataMapper ORM 라이브러리를 검토 중입니다. - http://datamapper.wanwizard.euDataMapper가 참여하여 결과를 얻습니다.

나는 이상하게 들릴 수있는 문제에 직면했습니다 : 한 번에 2 개의 조인 된 테이블에서 값을 가져올 수 없습니다. 두 테이블에 대한 모델을 만들고 $ has_many/$ has_one이 올바르게 설정되어 있는지 확인했습니다. 내가 데이터를 foreach는 그들을 통해 반복하고 확인하여 위의 모두 확인한

$job = new Job(); 
$data['job'] = $job->get(); //produces obj with all rows from table 'jobs' 
$acct = new Acct(); 
$data['acct'] = $acct->get(); //produces obj with all rows from table 'accts' 

: 내 컨트롤러에서이 코드는 이름이 지정된 테이블 오브젝트의 모든 행이 객체를 생성합니다. 하지만 두 테이블에서 관련 정보를 가져 오려고 할 때. 나는 아무것도 얻지 못한다. 나는 GET (고급) 문서에서 찾을 수있는 모든 것을 시도했다. 특히 이것은 작동하지 않습니다 :

//NOTE: a job has one acct joined on field 'acct_id' 
$job = new Job(); 
$data['job'] = $job->include_related('acct',array('name'))->get(); 

결과 개체 ($ data [ 'job'])는 'jobs'테이블의 데이터 만 포함합니다.

<table> 
<tr><?php foreach ($job->fields as $col) { ?><th><?= $col ?></th><?php } ?></tr> 
<?php foreach($job as $row) { ?> 
<tr><?php foreach($job->fields as $col) { ?><td><?= $row->$col ?></td><?php } ?></tr> 
<?php } ?> 
</table> 

답변