2009-12-01 5 views
2

Y at-il un moyen d'accéder à une classe d'aide à partir d'un plugin enregistré. À partir du contrôleur, on peut utiliser:Zend Framework - Obtenir une aide à partir d'un plugin enregistré

$this->_helper->getHelper($helperName); 

Plus précisément, nous utilisons l'aide FlashMessenger pour transmettre des messages d'erreur et d'information autour de différentes pages avant de faire une redirection. Dans l'un de nos plugins, nous déconnectez un utilisateur et définissez l'index et le contrôleur sur une page différente. Nous pourrions définir manuellement une valeur dans la requête mais cela semble aller à l'encontre de ce que le FlashMessenger est supposé être utilisé et nous devrions le faire juste pour ce cas particulier.

+0

Voulez-vous dire cela? http://stackoverflow.com/questions/1116401/zend-framework-call-an-action-helper-from-within-another-action-helper – mercator

Répondre

1

Vous devez utiliser le action helper broker pour récupérer un assistant n'importe où en dehors d'un contrôleur. Voir la même question:

zend-framework, call an action helper from within another action helper

+1

Merci. J'ai fini par essayer cela et j'ai pu obtenir l'aide. Dans notre cas, cependant, nous n'avons pas pu utiliser l'assistant FlashMessenger car il suppose qu'il y a un saut entre les messages ajoutés et les messages pouvant être récupérés. Dans le cas où vous essayez de les obtenir dans un plugin enregistré avant que le contrôle ne parvienne au contrôleur, le contrôleur n'aura pas passé le bond requis quand il essayera d'utiliser les messages. Quoi qu'il en soit, votre réponse est correcte et peut aider les autres aussi longtemps qu'ils n'essaient pas d'utiliser FlashMessenger. –

Questions connexes