Bonjour,

J'utilise la version 1.12 du ZF. J'ai un souci sur le chargement des vues. Voici un résumé de mon code :

controller
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
FooController  extends Zend_Controller_Action {
 
  public function init()
  {
    // traitement données avec la DB ... ... ...
    // puis :
    $this->render('generic');
  }
}
Quelles que soient l'action de la request, je passe dans l'init pour charger mes données, et rediriger vers la vue correspondante.

Exemples :
monsite.com/foo/bar
monsite.com/foo/baz

Je charge les données correspondant à bar ou baz, puis les renvoie vers une même vue (generic.phtml).

Problème :
une fois la vue affichées, le code continue à s'exécuter, et j'ai une erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Fatal error: Uncaught exception 'Zend_Controller_Action_Exception' with message 'Action "bar" does not exist and was not trapped in __call()'
J'ai créé l'action barAction() pour debug, et effectivement elle est appelée à la suite du $this->render() initial. Mais je ne veux pas qu'elle soit appelée.

J'ai tenté un
Code : Sélectionner tout - Visualiser dans une fenêtre à part
$this->_helper->layout->disableLayout();
Mais j'ai besoin de charger le layout.

Idem avec :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
$this->_helper->viewRenderer->setNoRender(true);
Je souhaiterais plutôt désactiver le chargement de la vue par défaut (correspondant à l'action) plutôt que désactiver les vues...

J'espère que je suis assez clair... Merci pour votre aide.