Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > symfony
symfony Forum d'entraide sur le framework PHP symfony. Avant de poster : cours symfony et FAQ symfony
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/05/2011, 17h51   #1
Invité régulier
 
Sébastien
Inscription : mai 2008
Messages : 20
Détails du profil
Informations personnelles :
Nom : Sébastien
Âge : 34

Informations forums :
Inscription : mai 2008
Messages : 20
Points : 8
Points : 8
Par défaut Comment utiliser des parametres globaux dans une tâche

Bonjour,
Je réalise une tache qui se connecte à un web service.
Je voudrais mettre les paramètres de connexion dans un fichier de configuration (il me semble que app.yml sert à ça).

Mais sfConfig::get('app_mavariable') ne renvoie rien dans la tâche.

Quelqu'un a une solution ?
sebastien.bd est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/05/2011, 19h57   #2
Modérateur
 
Avatar de Michel Rotta
 
Homme Michel Rotta
Responsable d'exploitation informatique
Inscription : septembre 2005
Messages : 4 913
Détails du profil
Informations personnelles :
Nom : Homme Michel Rotta
Âge : 49
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Responsable d'exploitation informatique
Secteur : Distribution

Informations forums :
Inscription : septembre 2005
Messages : 4 913
Points : 7 505
Points : 7 505
De tête et sans garantie...

Ta tâche doit hériter d'un sfBaseTask qui doit lui (ou son parent) avoir une propriété configuration qui embarque la configuration pour ton environnement et ta tâche. C'est probablement un pointeur vers un truc dans le genre de sfApplicationConfiguration ou un truc dans le genre.

Vérifie dans l'api de symfony.

Tu devrais y trouver ton bonheur.
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
  • Pensez à valoriser les réponses pertinantes, cliquez sur le bouton vert +1 pour indiquer votre accord avec la solution proposée.
  • Pensez à utiliser la balise [code] pour afficher du code, elle est cachée sous le bouton [#] dans l'éditeur.
  • Une discussion est terminée ? Alors le bouton est votre ami !
Michel Rotta est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/05/2011, 14h30   #3
Invité régulier
 
Sébastien
Inscription : mai 2008
Messages : 20
Détails du profil
Informations personnelles :
Nom : Sébastien
Âge : 34

Informations forums :
Inscription : mai 2008
Messages : 20
Points : 8
Points : 8
J'ai trouvé une solution, je vous la livre
Lorsque l'on créé une tâche par l'intermédiaire de la ligne de commande :
Code :
php symfony generate:task maTache
Symfony ajoute dans la fonction configure() le bloc suivant :
Code :
1
2
3
4
5
6
7
 
$this->addOptions(array(
      new sfCommandOption('application', null, sfCommandOption::PARAMETER_REQUIRED, 'The application name'),
      new sfCommandOption('env', null, sfCommandOption::PARAMETER_REQUIRED, 'The environment', 'dev'),
      new sfCommandOption('connection', null, sfCommandOption::PARAMETER_REQUIRED, 'The connection name', 'doctrine'),
      // add your own options here
    ));
Ces options sont passées en argument de la fonction execute() lors de l’exécution de la tache.
C'est en renseignant l'option --application que l'on permet à la tâche d'accéder au fichier app.yml de l'application en question. Deux solutions :
- en ligne de commande :
Code :
php symfony namespace:maTache --application=mon_application
- ou en ajoutant dans la tâche un argument par défaut pour l'option --application :
Code :
1
2
3
4
$this->addOptions(array(
   new sfCommandOption('application', null, sfCommandOption::PARAMETER_REQUIRED, 'The application name', 'mon_application'),
    ...
));
Si l'option --application n'est pas renseignée, sfConfig::get(...) ne peut accéder qu'aux principaux chemins du projet Symfony : sf_root_dir, sf_apps_dir...
sebastien.bd est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h25.


 
 
 
 
Partenaires

Hébergement Web