IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Zend Framework PHP Discussion :

[ZF2.2] mon layout ne s'affiche pas


Sujet :

Zend Framework PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Avatar de stc074
    Homme Profil pro
    Codeur du dimanche
    Inscrit en
    Janvier 2009
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Lozère (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Codeur du dimanche

    Informations forums :
    Inscription : Janvier 2009
    Messages : 1 015
    Billets dans le blog
    1
    Par défaut [ZF2.2] mon layout ne s'affiche pas
    Bonjour, j'essaie de personnaliser mon layout pour une partie admin, ne trouvant pas de doc la dessus je me suis inspiré du code de base du skeleton, le module Application.
    Voici une partie de mon module.config.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
        'view_manager' => array(
            'display_not_found_reason' => true,
            'display_exceptions'       => true,
            'doctype'                  => 'HTML5',
            'not_found_template'       => 'error/404',
            'exception_template'       => 'error/index',
            'template_map' => array(
                'layout/layout'           => __DIR__ . '/../view/layout/layout.phtml',
                'nimda/nimda/index'       => __DIR__ . '/../view/nimda/nimda/index.phtml',
                'error/404'               => __DIR__ . '/../view/error/404.phtml',
                'error/index'             => __DIR__ . '/../view/error/index.phtml',
            ),
    J'ai bien un fichier view/layout/layout.phtml dans lequel je n'ai pas mis grand chose mais en fait zend m'affiche le layout du module Application avec mon module admin, j'ai d'ailleurs changer la route du module application (/appli)
    A votre avis d’où vient mon problème ?
    Merci

  2. #2
    Membre chevronné

    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2003
    Messages
    253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2003
    Messages : 253
    Par défaut
    Bonjour,

    Question bête, tu as bien pensé à charger ton module admin dans la configuration de ton application ?

  3. #3
    Membre éprouvé
    Avatar de stc074
    Homme Profil pro
    Codeur du dimanche
    Inscrit en
    Janvier 2009
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Lozère (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Codeur du dimanche

    Informations forums :
    Inscription : Janvier 2009
    Messages : 1 015
    Billets dans le blog
    1
    Par défaut
    Oui, j'arrive même a afficher quelque chose, mais le header et le footer sont ceux du layout du module de base (Application) alors que le contenu correspond bien à ma page index.phtml dans mon module admin, je suis un peu perdu.

  4. #4
    Membre chevronné

    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2003
    Messages
    253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2003
    Messages : 253
    Par défaut
    Ma réponse est à prendre au conditionnel, car non testée, et mon expérience de ZF2 se limite pour beaucoup à mes réponses sur ce forum faute d'avoir travaillé sur un projet concret.

    En tous les cas, il semblerait que la configuration des modules soient mergée dans la configuration globale avant le routage, et que donc il n'est pas possible dans la configuration de définir un comportement spécifique au module, mais uniquement de segmenter la configuration en plusieurs fichier. En fait, c'est un peu le même soucis qu'avec ZF1...

    Sauf que l'EventManager offre une façon plus élégante de régler le soucis : http://blog.evan.pro/module-specific...nd-framework-2

    Le billet date un peu, mais je doute que ça ne soit plus valable.

  5. #5
    Membre éprouvé
    Avatar de stc074
    Homme Profil pro
    Codeur du dimanche
    Inscrit en
    Janvier 2009
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Lozère (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Codeur du dimanche

    Informations forums :
    Inscription : Janvier 2009
    Messages : 1 015
    Billets dans le blog
    1
    Par défaut
    Merci, le code de ton lien fonctionne par contre il ne faut pas que le layout ait 2 fois le même nom, j'ai donc mis(module.config.php) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
        'view_manager' => array(
            'display_not_found_reason' => true,
            'display_exceptions'       => true,
            'doctype'                  => 'HTML5',
            'not_found_template'       => 'error/404',
            'exception_template'       => 'error/index',
            'template_map' => array(
                'layout/adminlayout'           => __DIR__ . '/../view/layout/layout.phtml',
                'nimda/nimda/index'       => __DIR__ . '/../view/nimda/nimda/index.phtml',
                'error/404'               => __DIR__ . '/../view/error/404.phtml',
                'error/index'             => __DIR__ . '/../view/error/index.phtml',
            ),
    puis dans Module.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
        public function init(ModuleManager $moduleManager) {
            $shareEvents=$moduleManager->getEventManager()->getSharedManager();
            $shareEvents->attach(__NAMESPACE__, 'dispatch', function($e) {
                $controller=$e->getTarget();
                $controller->layout('layout/adminlayout');
            }, 100);
        }
    Si je ne changeais pas layout/adminlayout (et que je laissais layout/layout) ça buggait, sûrement parce que le module Application utilise layout/layout.

    Encore merci !

  6. #6
    Membre chevronné

    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2003
    Messages
    253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2003
    Messages : 253
    Par défaut
    Si je ne changeais pas layout/adminlayout (et que je laissais layout/layout) ça buggait, sûrement parce que le module Application utilise layout/layout.
    Si les configurations sont mergées, deux clés identiques ne peuvent effectivement pas cohabiter. Pour voir laquelle écrase l'autre, il faut regarder du code de ZF2 je ne saurais pas répondre comme ça spontanément.

    Ravi d'avoir pu aider

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [SimpleXML] Le contenu de mon élément ne s'affiche pas
    Par alliance dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 08/05/2006, 20h27
  2. Mon fichier ne s'affiche pas...
    Par natanyanka dans le forum Access
    Réponses: 10
    Dernier message: 21/03/2006, 16h24
  3. [XSL]Comment faire ceci ?? Mon for-each n'affiche pas tout !
    Par Devil666 dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 27/07/2005, 15h04
  4. Mon dessin ne s'affiche pas au lancement...
    Par Deedier dans le forum MFC
    Réponses: 6
    Dernier message: 02/05/2005, 16h29
  5. [JApplet]mon applet ne s'affiche pas.
    Par yannick56 dans le forum Applets
    Réponses: 6
    Dernier message: 27/05/2004, 17h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo