Salut à tous
J'effectue mes 1er test de ZF au niveau des Models.
J'ai parcouru ces 2 tutos (entre autre) :
Zend_Db_Table
Relations Zend_Db_Table
Jusqu'à lors tout va bien.
J'ai donc respecté la même structure que le tuto sur les relations, c'est à dire :
Table "product" :
Application_Model_DbTable_Product, Application_Model_ProductMapper, Application_Model_Product
Table "manufacturer" :
Application_Model_DbTable_Manufacturer, Application_Model_ManufacturerMapper, Application_Model_Manufacturer
Je souhaite maintenant faire une jointure entre la table "product" et "manufacturer" pour obtenir le nom du manufacturer (fabricant).
Je suis parvenu à le faire avec ce code dans Application_Model_ProductMapper::fetchAll() :
Cependant, les noms des champs de la table "manufacturer" sont : id_manufacturer et name
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 $table = $this->getDbTable(); //$this->_name (Erreur : propriété non définie ???) $select = $table->select() ->setIntegrityCheck(false) ->from(array('p' => 'ps_product')) ->join(array('m' => 'ps_manufacturer'), 'p.id_manufacturer = m.id_manufacturer'); $resultSet = $table->fetchAll($select);
Ce que je souhaite faire c'est de redéfinir le nom du champ "name" dans le SELECT de cette requête (jointure des 2 tables) avec : name_manufacturer
(cela sans renommer le champ au niveau de la table).
Ceci pour éviter un conflit de noms qui pourrait arriver.
Mais je ne vois pas du tout comment faire.
Un coup de pouce serait apprécié.
Partager