Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 13-10-2011 17:26:20

123pierre
Membre
Date d'inscription: 27-03-2011
Messages: 10

[résolu][View action()][1.11.9] Completer la colonne de gauche.

Bonjour à tous,

Je suis mega debutant, j'espere que vous pourrez m'aider (quand meme :-((
Desolé si ma syntaxe et vocabulaire sont erronés, j'espere pouvoir me faire comprendre.


L'architecture de mon application (en gros)

Code:

layout
  |-- layout.phtml
module
  |-- library (controller + view)
  |-- default (controller + view)

Voila j'ai donc un layout.phtm

Code:

<div id="gauche"><?php echo $this->layout()->leftMenu;?></div>
<div id="contenu"><?php echo $this->layout()->content;?></div>

Je voudrais pouvoir inserer dans la collone de gauche des "modules" issus de ma librairies (library) ou je stocke mes formulaires de login, recherches, publicités, etc.. Cela differement sur chaque page et chargé a la demande depuis les controllers.

Dans mon controller Default_indexController j'ai le code suivant:

Code:

public function init()
    {    
        
        // VIEW  --------------------------------------------------------------
        
        $this -> view -> addScriptPath(APPLICATION_PATH . '/modules/library/views/scripts/index/');
        // Left Colomn
        $this -> renderScript('basiclogin.phtml','leftMenu');
        // Render
        $this->render();
        // -------------------------------------------------------------------
        
    }

Cela marche a merveille pour du HTML static.
Mais par exemple quand je veux afficher un formulaire (generé par Zend Form et donc par le controller) le formulaire ne s'affiche pas..

Si quelqu'un peut m'aider je serait énormément reconnaissant. Ou de m'aiguiller sur la bonne voie (MVC push, Pull, ActionStack, ... tout ca est bien flou dans ma tete)
Encore une fois, j'ai bien conscience de ne pas m'exprimer dans les regles de l'art, soyez indulgents. Si vous ne comprenez rien, merci de me demander clarification..

Par avance merci merci merci!! (je vous explique pas la prise de tete ;_)

Pierre.

Dernière modification par 123pierre (14-10-2011 15:46:14)

Hors ligne

 

#2 13-10-2011 20:39:20

shadypierre
Membre
Date d'inscription: 24-03-2010
Messages: 617

Re: [résolu][View action()][1.11.9] Completer la colonne de gauche.

Si j'ai bien compris ta demande, l'aide de vue action() devrait t'aider

Hors ligne

 

#3 14-10-2011 05:03:59

123pierre
Membre
Date d'inscription: 27-03-2011
Messages: 10

Re: [résolu][View action()][1.11.9] Completer la colonne de gauche.

Hello!
Merci Shady pour ta réponse.
Dis moi si je me trompe : l'aide de vue action est donc seulement applicable depuis la vue (ou layout).
Donc méthode PULL.
(N’hésite pas a m’arrêter car la je tâtonne)
Je ne peux donc pas l'appeler a la demande depuis mes controllers..

Ce que je veux c'est que chaque controller définisse ce qu'il doit y avoir dans le menu de gauche.
Un coup une publicité, un coup un formulaire de login, un coup un formulaire de recherche, etc...

Si je ne me trompe pas c'est donc impossible avec l'aide action() car cette aide appel toujours le meme script.
(???)

Encore une fois l'aide d'action renderScript() marche a merveille sauf que le contoller est inactif.
(Probleme car les formulaires ne s'affichent plus)

Merci bcp pour ton aide.

Cordialement,

PIerre.

Dernière modification par 123pierre (14-10-2011 05:06:10)

Hors ligne

 

#4 14-10-2011 11:47:44

shadypierre
Membre
Date d'inscription: 24-03-2010
Messages: 617

Re: [résolu][View action()][1.11.9] Completer la colonne de gauche.

Je t'avoue que j'avais seulement survolé ton message :x
En effet action() est une aide de vue, applicable depuis la vue, mais tu dois pouvoir faire quelques choses dans ce style :
# Controller
$this->view->layout()->left = $this->view->action('action','controller');
# View
echo $this->layout()->left;

Hors ligne

 

#5 14-10-2011 15:45:03

123pierre
Membre
Date d'inscription: 27-03-2011
Messages: 10

Re: [résolu][View action()][1.11.9] Completer la colonne de gauche.

BINGO!!!!

Shady (Pierre?) merci bcp..

Ouah je ne pensais pas que Zend pouvais être aussi souple!

A bientôt sur le forum ;-)

Pierre.

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages