|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre confirmé
![]() Christian FINELDéveloppeur .NET Inscription : avril 2004 Messages : 262 ![]() |
Bonjour à tous !
Je veux stocker les messages d'erreur de mon application dans un fichier YML. Je ne veux pas le faire dans le fichier app.yml qui est un fichier de configuration. J'ai donc créé un fichier à part. Comment faire pour que ce fichier soit pris en compte par Symfony et accessible à la manière 'sfConfig::get('cle');' ? Si vous avez de meilleurs solutions je suis également preneur
__________________
http://www.macreiben.net |
|
00
|
|
|
#2 |
|
Membre éclairé
![]() Inscription : mai 2008 Messages : 359 ![]() |
Bonjour,
Si tu veux pouvoir créer et gérer des fichiers de configuration yaml, il faut créer un configuration handler, ce qui te permettra de définir toi-même une syntaxe pour tes fichiers yaml et les transformer en code php. Maintenant je ne sais pas si c'est exactement ce que tu souhaites faire, ou si tu veux un système de gestion d'erreur personnalisé ? |
|
|
00
|
|
|
#3 |
|
Membre confirmé
![]() Christian FINELDéveloppeur .NET Inscription : avril 2004 Messages : 262 ![]() |
C'est exactement ce que je cherchais - il faut donc que je crée une classe spécifique.
Je vais me baser sur ce qui existe déja dans Symfony. Merci pour ta réponse
__________________
http://www.macreiben.net |
|
00
|
|
|
#4 | ||
|
Membre régulier
![]() |
Pour moi je me contente de cette méthode static sous lib/myUser.class.php du genre :
Code :
ou dans le cas d'un message paramétrable Code :
echo myUser::msg(3,array('Ahmed','phpiste')) ; |
||
|
|
00
|
|
|
#5 |
|
Membre confirmé
![]() Christian FINELDéveloppeur .NET Inscription : avril 2004 Messages : 262 ![]() |
Et donc si tu veux modifier un message d'erreur, tu modifie une classe PHP ?
C'est un peu crade non ?
__________________
http://www.macreiben.net |
|
00
|
|
|
#6 |
|
Membre régulier
![]() |
|
|
|
00
|
|
|
#7 |
|
Membre confirmé
![]() Christian FINELDéveloppeur .NET Inscription : avril 2004 Messages : 262 ![]() |
Les fichiers exécutables ne doivent pas être modifiés - on ne peut donc pas mettre de messages d'erreurs en dur dans le code.
La méthode de Tsilefy (utilisation du config handler) est la meilleure : les messages d'erreurs sont modifiables sans toucher un seul fichier exécutable PHP. Une classe dédié se charge de les charger. Ton code est juste, mais posera des problèmes de maintenance à long terme.
__________________
http://www.macreiben.net |
|
00
|
|
|
#8 | ||||
|
Membre régulier
![]() |
OK
voila j'ai créer un fichier msg.yml contenant : Code :
config/msg.yml: Code :
Code :
<?php echo sfConfig::get('msg_bonsoir'); ?> |
||||
|
|
00
|
|
|
#9 | ||
|
Membre confirmé
![]() Christian FINELDéveloppeur .NET Inscription : avril 2004 Messages : 262 ![]() |
Il faut que tu ajoutes :
Code :
Ceci dit, le fichier est chargé, donc si quelqu'un a une idée à ce sujet. Source : doc de symfony, je l'ai pas sorti de mon chapeau
__________________
http://www.macreiben.net |
||
|
00
|
|
|
#10 |
|
Membre régulier
![]() |
ça marche pas malgré que je l'ai ajouté dans mon controller
any help please |
|
|
00
|
|
|
#11 |
|
Membre confirmé
![]() Christian FINELDéveloppeur .NET Inscription : avril 2004 Messages : 262 ![]() |
Recherche le fichier cache, à l'intérieur tu devrais avoir un dossier dev, dans ce dossier dev tu dois avoir un fichier genre config_msg.yml.php.
Si tu ne trouves pas le fichier en question, c'est qu'il y a un problème. Si il y est, ouvres le. Tu dois voir dedans ce qu'il ajoute réelement au fichier de config. A noté que si tu utilises ce handler, tu dois avoir au moins une section all. Ce handler est le même que celui qui parse ton fichier app.yml.
__________________
http://www.macreiben.net |
|
00
|
|
|
#12 |
|
Membre régulier
![]() |
|
|
|
00
|
|
|
#13 | ||
|
Membre confirmé
![]() Christian FINELDéveloppeur .NET Inscription : avril 2004 Messages : 262 ![]() |
Met quelque chose comme :
Code :
__________________
http://www.macreiben.net |
||
|
00
|
|
|
#14 |
|
Membre régulier
![]() |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com