2011-04-24 4 views
2

한 번이 질문을 게시했지만 전혀 대답이 없었습니다. 이번에는 질문이 가장 형식화되어 있으므로 필요한 것을 더 쉽게 이해할 수 있습니다. Zend Db 테이블 요약 행에 새 필드 추가

내가 Zend_Db_Table_Abstract

와 모델을 만든 기본 키와 테이블 이름, 모든 확인을 추가합니다.

그런 다음 코드를 실행하여 글꼴을 검색했습니다.

$db = new App_Model_News(); 

$news = $db->fetchAll("visible = 1", "published_on DESC"); 

foreach ($news as $i => $new) { 

    $images = $this->_helper->News->first_image($new); 

} 

이 방법은 작동하지만 두 view 구문을 검색해야합니다

$this->view->news = $news; 
$this->view->images = $images; 

는 내가 필요하면이 같은 일을하고,이 두 가지 결과를 병합하는 것입니다. 뉴스 행 내부의 이미지를 추가 할 수있는 방법이

class App_Model_News extends Zend_Db_Table_Abstract{ 

    protected $_name = 'news'; 
    protected $_primary = 'id'; 

    protected $_dependentTables = array('ImagesNews'); 

} 

class ImagesNews extends Zend_Db_Table_Abstract{ 

    protected $_name = 'news_imagens'; 
    protected $_primary = 'id_new'; 

    protected $_referenceMap = array(
     'Arquivos' => array(
      'columns'   => 'id_new', 
      'refTableClass'  => 'App_Model_News', 
      'refColumns'  => 'id' 
     ));  
} 

있습니까 :

$db = new App_Model_News(); 

$news = $db->fetchAll("visible = 1", "published_on DESC"); 

foreach ($news as $i => $new) { 

    $news[$i]->images = $this->_helper->News->first_image($new); 

} 
$this->view->news = $news; 

가 나는 추상 배열의 결합을하기 때문에, 나의 모델은 다음과 같이이다, 그것을 할 수 아니에요? 그런 다음 뷰에서 이미지를 반복하고 인쇄 할 수 있습니다.

감사합니다. 나쁜 영어로 죄송합니다.

class App_Model_News extends Zend_Db_Table_Abstract{ 

    protected $_name = 'news'; 
    protected $_primary = 'id'; 
    protected $_rowClass = 'App_Model_Row_News'; 

    protected $_dependentTables = array('ImagesNews'); 

} 

희망이 도움이 :

class App_Model_Row_News extends Zend_Db_Table_Row_Abstract { 
    public $images; 
} 

그런 다음 사용자 정의 행 클래스를 사용하는 App_Model_News 말할 것이다 :

답변

3

나는 당신이 할 수있는 것은 사용자 정의 뉴스 행 클래스를 만들 수 있다고 생각 .

+0

고맙습니다. Marcin! 많은 도움이되었습니다. –

+0

즉, Doctrine : D를 사용하십시오. –