Page 1 sur 1

Symfony - inclure partial dans une tâche

Posté : 03 mai 2010, 15:26
par Invité
Bonjour à tous ,

je suis actuellement en train de réaliser une tâche sur mon site. Celle-ci doit envoyer des mails toutes les nuits à un certain nombre d'utilisateur.
Dans la génération des mails, je souhaite inclure un template (comme je l'ai fait sur le reste du site), or je n'y arrive pas dans la tâche.

Voici le code :
$message = $this->getMailer()->compose("[email protected]",$compte->getCompteCourriel(),"Alertes","ceci est une alerte");
$message->setBody($this->getPartial('MailAlerteHtml', $tabAnciens), 'text/html');

Je lance ma tâche en lui précisant l'application pour récupérer le contexte, mais il m'affiche une erreur sur le getPartial().

Quelqu'un a t'il une idée pour régler / contourner ce problème ?

Merci d'avance pour votre aide.

Re: Symfony - inclure partial dans une tâche

Posté : 03 mai 2010, 15:31
par zeus
Avec l'erreur, on pourrait surement mieux t'aider ;)

Re: Symfony - inclure partial dans une tâche

Posté : 03 mai 2010, 15:37
par binouz
effectivement :)


"call to undefined method envoiAlertesTask::getPartial()"

Re: Symfony - inclure partial dans une tâche

Posté : 03 mai 2010, 16:37
par zeus
la méthode getPartial() est une méthode de la classe sfAction.
Toi, tu es dans une task, donc dans la classe sfTask, qui n'hérite pas de sfAction. C'est donc normal que ça ne marche pas.

Toutefois, cette méthode n'est qu'un raccourci vers le helper get_partial(), qui devrait beaucoup t'intéresser ;)

Re: Symfony - inclure partial dans une tâche

Posté : 03 mai 2010, 17:00
par binouz
Merci beaucoup (3 heures que je ramais ....) !!


si cela intéresse quelqu'un , voici le code que j'ai utilisé :

$context = sfContext::createInstance($this->configuration);
$this->configuration->loadHelpers('Partial');
...
$message->setBody(get_partial('ajax/mailEnvoiAlerteHtml', array('tabAnciens'=>$tabAnciens)));