Prima di tutto grazie per la risposta, fatto e funziona, a questo punto ti chiederei anche se dal punto di vista logico questo potrebbe essere il modo giusto di lavorare.
Creo un modello Catalog che mi gestisce il catalogo prodotti, usando delle risorse (Zend_Db_Table). Ecco come ho fatto:
resource/Category.php:
Codice PHP:
class Resource_Category extends Zend_Db_Table_Abstract
{
protected $_name = 'category';
protected $_primary = 'category_id';
public function getCategoryByIdent($ident)
{
$categoryDesc = new Resource_Categorydesc();
$select = $this->select()
->setIntegrityCheck(false)
->from( array('c' => $this->info('name')), array(
'ident',
'image'
))
->join( array('cd' => $categoryDesc->info('name')),
'cd.`category_id` = c.`category_id`',
array(
'name',
'language_id'
))
->where('c.`ident` = ?', $ident)
->where('cd.`language_id` = ?', 1);
return $this->fetchRow($select);
}
....
....
}
resource/Categorydesc.php
Codice PHP:
class Resource_Categorydesc extends Zend_Db_Table_Abstract
{
protected $_name = 'category_description';
protected $_primary = array('category_id','langage_id');
protected $_referenceMap = array(
'CategoryDesc' => array(
'columns' => 'category_id',
'refTableClass' => 'Resource_Category',
'refColumns' => 'category_id',
)
);
}
Catalog.php
Codice PHP:
class Catalog
{
public function getCategoryByIdent($ident)
{
$category = new Resource_Category();
return $this->category->getCategoryByIdent($ident);
}
....
....
}