J'ai créé une suite de rapports et j'ai un rapport spécifique qui construit un fichier CSV. Servir ce fichier via un navigateur à la demande n'est pas un problème, mais je dois être capable de créer ce fichier CSV tous les soirs, et d'envoyer un e-mail autour d'un lien pour pouvoir le télécharger. Essentiellement, j'ai besoin de pouvoir remplacer une action spécifique par une tâche symfony, lancée via cron. Alors, comment gagner du contexte application/module à partir d'une tâche symfony? Et deuxièmement, comment j'appellerais la bibliothèque SwiftMailer à partir d'une tâche symfony? J'utilise symfony v1.4.4 et PHP v.2.2.13.Récupérer un contexte application/module à partir d'une tâche symfony
3
A
Répondre
5
Dans la fonction configure() de votre tâche , vous devez définir l'application impliquée dans votre tâche:
$this->addOptions(array(
new sfCommandOption('application', null, sfCommandOption::PARAMETER_REQUIRED, 'The application name','frontend'),
new sfCommandOption('env', null, sfCommandOption::PARAMETER_REQUIRED, 'The environment', 'dev'),
new sfCommandOption('connection', null, sfCommandOption::PARAMETER_REQUIRED, 'The connection name', 'doctrine'),
));
Et alors vous devez créer le contexte dans l'exécution() fonction:
sfContext::createInstance($this->configuration);
Enfin, vous pouvez appeler Swift très facilement:
$this->getMailer()->composeAndSend($sender,$dest, $subject, $mailBody);
0
Supposons que nous nous avons --application
et --env
options de tâche CLI définie dans taskName::configure()
méthode
contexte d'application recevant ensuite dans taskName::execute()
méthode ressemblera:
$context = sfContext::createInstance(ProjectConfiguration::getApplicationConfiguration($options['application'], $options['env']))
+2
je reçois un « PHP Erreur fatale: Impossible redéclarer classe sfLogger dans .../config_core_compile.yml.php 'en essayant ça. – chattsm
Questions connexes
- 1. Comment charger une aide personnalisée spécifique à un module à partir d'une tâche dans symfony?
- 2. Contexte Rake Tâche Aide
- 3. Script long dans admin, tâche dans Symfony?
- 4. Tâche de plug-in Symfony 1.4
- 5. Symfony - Tâche - Travailler avec les options
- 6. Comment extraire des étiquettes à partir des formulaires Symfony I18n Extraction Tâche
- 7. Incluant CSS dans un e-mail envoyé depuis une tâche dans symfony
- 8. Accéder à un plugin à partir d'une tâche de ratissage
- 9. Symfony: comment définir un modèle à partir d'un autre module?
- 10. Accéder au contexte de printemps à partir de jaas LoginModule
- 11. Tâche lancée à partir d'un Thread.Timer
- 12. Obtenir le contexte à partir de UIImageView
- 13. Comment envoyer un email à partir d'une tâche SQL?
- 14. Comment créer un UIImage à partir du contexte graphique actuel?
- 15. Symfony 1.4.6 configuration de chargement factories.yml de tâche
- 16. CoreData: Récupération d'un objet à partir d'un contexte non enregistré
- 17. Symfony: essayer de récupérer une variable enregistrée à l'aide sfContext :: getInstance()
- 18. Impossible de récupérer le contexte de sécurité depuis Spring-Jersey
- 19. Outils pour récupérer le fichier ASPX à partir dll précompilé?
- 20. Appel d'une tâche capistrano à plusieurs étapes à partir d'une tâche capistrano
- 21. Aide C# Regex - Récupérer un nombre à partir d'une phrase
- 22. Comment récupérer un dataBinding spécifique à partir de MultiBindingExpression?
- 23. Récupérer un attribut à partir d'une méthode d'interface
- 24. Comment récupérer un message d'erreur à partir de cet objet?
- 25. Comment récupérer un fichier binaire à partir de l'assembly .NET?
- 26. Récupérer un jour à partir de la date donnée
- 27. Récupérer un projet SSIS à partir d'un package SSIS
- 28. Comment puis-je fournir un contexte à un URLStreamHandler?
- 29. Récupérer SelectedItems à partir d'un RadGrid
- 30. Comment récupérer l'espace à partir du "Grip"
De bonnes choses, bien que je vois symfony se plaindre d'envoyer des en-têtes et quoi d'autre; ce qui n'est évidemment pas nécessaire sur la CLI. Il semble qu'il n'y avait pas 100% de prévoyance pour cela quand Fabien a mis le cadre ensemble. – quickshiftin