Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour,
Je suis débutant sur zend framework
j'ai une question au sujet de la récupération d'une instance de la connexion
comment je fais?
est ce une bonne idée de faire une méthode dans le model de ce genre
public function getZendDb(){ if($this->db == null){ $config = Zend_Registry::get('config'); $this->db = Zend_db::factory($config->db->adapter, $config->db->config->toArray()); } return $this->db; }
Cela revient à dire qu'il faut à chaque fois crée cette méthode dans chaque model lorsqu'on a besoin de ce connecter a la base de donnée...
Une deuxième solution serait peut être
Est ce une bonne idée de l'initialisé une fois pour toute dans index.php et de l'enregistrer dans le registre?
merci
Dernière modification par Mr.MoOx (29-09-2008 11:44:13)
Hors ligne
Salut,
Connectes-toi simplement à ta base de données dans le bootstrap. Cela t'éviteras de devoir récupérer ta config dans chaque modèle
Hors ligne
C'est une meilleure idée de l'instancier une fois dans le bootstrap et de mettre ta connexion dans le registre.
En termes de perfs, ça ne pénalise pas les choses dans la mesure où la connexion n'est réellement créée avec la base de données que lors de la première requête.
A+, Philippe
Hors ligne
Perso je fais ça:
$dbAdapter = Zend_Db::factory($dbConfig); Zend_Db_Table::setDefaultAdapter($dbAdapter);
Ainsi de n'importe où je récupère ma connexion de cette manière
$db = Zend_Db_Table::getDefaultAdapter();
Hors ligne
Bonjour
Merci de vos réponses
c'est éxactement ce que je cherchais
$db = Zend_Db_Table::getDefaultAdapter();
merci encore=)
Hors ligne
Mr.MoOx a écrit:
Perso je fais ça:
Code:
$dbAdapter = Zend_Db::factory($dbConfig); Zend_Db_Table::setDefaultAdapter($dbAdapter);Ainsi de n'importe où je récupère ma connexion de cette manière
Code:
$db = Zend_Db_Table::getDefaultAdapter();
Ici pas de registre alors si j'ai bien compris ?
Dernière modification par BeRoots (02-10-2008 07:41:31)
Hors ligne
Pages: 1