symfony database selon host/url

Petit nouveau ! | 6 Messages

03 mai 2011, 10:57

Symfony permet la configuration de la base de données selon l'environnement utilisé (dev, prod, ...) ou plus précisément le controlleur utilisé (frontend_dev.php, ...).

Mais le plus logique serait de paramétrer les variables de connexion selon les vrais URL de développement, test et production.

la partie param de database.yml devrait donc changer selon l'url attaqué (foot.test.fr ou foot.dev.fr ou foot.prod.fr)

# config/database.yml
param:
dsn: 'mysql:host=xxx.xx.x.xx;dbname=bdd_dev'
username: userdev
password: passdev

Mais comment faire ?
En fait il faudrait associer une variable d'environnement a une ou plusieurs URL ?

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

03 mai 2011, 11:29

Il faut que tu modifies ton/tes contrôleurs pour faire ce genre d'action.

Par exemple, dans frontend_dev.php, tu testes l'url, et tu affectes l'environnement en fonction du résultat.
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Petit nouveau ! | 6 Messages

10 mai 2011, 15:29

Merci Zeus !
j'ai procédé comme tu l'a proposé en créant une fonction dans la classe projectconfiguration que j'appel depuis mes front controller. plus le soucis d'écraser les paramétrages entre les différents serveurs (dev, test ou prod) lors du up svn ou de l'envoie ftp.