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

Symfony PHP Discussion :

probleme avec Twig [2.x]


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    A la découverte de la POO
    Inscrit en
    Mai 2009
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : A la découverte de la POO

    Informations forums :
    Inscription : Mai 2009
    Messages : 93
    Par défaut probleme avec Twig
    Bonjour à tous,
    je suis en pleine découverte de ce framework que je trouve vraiment top et j'ai un soucis d'affichage avec twig :

    j'ai un menu tout ce qu'il y a de plus classique et quand je suis dans la section affichée à l'écran,
    je veux afficher un class="active" sur le <li> correspondant...

    Rien que du très classique ...

    Apres quelques recherches, j'en suis arrivé à ceci qui est censé fonctionner :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <ul class="nav nav-pills nav-stacked">
     
        {% for menu_item in liste_menu %}
        <li role="presentation" {% if menu_item.nom in app.request.attributes.get('_route') %} class="active" {% endif %}>
            <a href="{{ path( menu_item.route )}}" >{{ menu_item.nom }}</a>
        </li>
     
        {% endfor %}
     
    </ul>
    mais ça ne marche pas, pas d'erreur ni rien cependant.

    le truc est que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {{ app.request.attributes.get('_route') }}
    ne m'affiche rien du tout dans ma vue ...
    donc bien sur impossible de répondre à ma condition ci dessus.

    Qu'ai je bien pu faire de mal pour {{ app.request.attributes.get('_route') }} ne fasse rien ?

  2. #2
    Membre extrêmement actif
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2012
    Messages
    2 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 100
    Par défaut
    yooo man rasta fariiiiiiiiiiiiiiiiiiiiiiiiiiie,


    avec {{ dump(...) }} tu peux afficher le contenu d'un objet

    essais de voir ce que ça donne avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    {{ dump( app.request.attributes.get('_route') )  }}
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    {{ dump( app.request.get('_route') )  }}
    si rien
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    {{ dump( app.request  )  }}

  3. #3
    Membre émérite
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    725
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2011
    Messages : 725
    Par défaut
    Bonsoir,

    Regarde dans le Profiler onglet Request, il y la liste des attributs de l'objet Request.
    Il me semble que c'est plutot "_route_name" et "_route_parameters"

    D'autre part tu utilises l'operateur "in" , ce qui veut dire que tu t'attends à ce que app.request.attributs.get('_route') soit un tableau ?

  4. #4
    Membre confirmé
    Homme Profil pro
    A la découverte de la POO
    Inscrit en
    Mai 2009
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : A la découverte de la POO

    Informations forums :
    Inscription : Mai 2009
    Messages : 93
    Par défaut
    Citation Envoyé par arnooo999 Voir le message
    Bonsoir,

    Regarde dans le Profiler onglet Request, il y la liste des attributs de l'objet Request.
    Il me semble que c'est plutot "_route_name" et "_route_parameters"
    Effectivement, je le vois bien dans le profiler ! A n'y rien comprendre :

    _controller Sritt\StockBundle\Controller\MarqueController::indexAction

    _route sritt_stock_marque

    _route_params []

    Citation Envoyé par arnooo999 Voir le message
    D'autre part tu utilises l'operateur "in" , ce qui veut dire que tu t'attends à ce que app.request.attributs.get('_route') soit un tableau ?
    ça je ne le maitrise pas encore ...
    quand je réussirai à avoir cette variable, je passerai à cette étape

  5. #5
    Membre émérite
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    725
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2011
    Messages : 725
    Par défaut
    S'il n'y a pas d'attribut "route", n'est ce pas tout simplement parce que cette route n'a pas de nom??
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    /**
    * @Route("/")
    **/
    public function indexAction(){
    }
    au lieu de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    /**
    * @Route("/",name="index_page")
    **/
    public function indexAction(){
    }

  6. #6
    Membre confirmé
    Homme Profil pro
    A la découverte de la POO
    Inscrit en
    Mai 2009
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : A la découverte de la POO

    Informations forums :
    Inscription : Mai 2009
    Messages : 93
    Par défaut
    Houla, à aucun endroit je n'ai de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    /**
     * @Route("/")
     **/
    mais comme j'ai un routing.yml, j'imagine que
    1 je n'ai pas besoin de ces annotations
    2 dans le profiler je vois ma route, il doit bien avoir un moyen de la prendre

  7. #7
    Membre confirmé
    Homme Profil pro
    A la découverte de la POO
    Inscrit en
    Mai 2009
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : A la découverte de la POO

    Informations forums :
    Inscription : Mai 2009
    Messages : 93
    Par défaut
    Hou la vache, je commence à m’inquiéter la !
    les 2 premiers m'affichent "null"

    par contre le dump global m'affiche bien pleins de trucs mais suite à une recherche par mots clés dans la page,
    seul ceci ressort :
    '_route_params' =>
    array (size=3)
    ...

    il n'y rien d'autre sur _route
    je comprends mieux pourquoi j'ai rien !

  8. #8
    Membre extrêmement actif
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2012
    Messages
    2 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 100
    Par défaut
    et donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    {{ dump( app.request.get('_route_params') )  }}


    ça donne quoi ?

  9. #9
    Membre confirmé
    Homme Profil pro
    A la découverte de la POO
    Inscrit en
    Mai 2009
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : A la découverte de la POO

    Informations forums :
    Inscription : Mai 2009
    Messages : 93
    Par défaut
    Et bien il n'y a pas mon url ! :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    array (size=3)
      '_format' => string 'html' (length=4)
      '_locale' => string 'en' (length=2)
      '_controller' => string 'SrittStockBundle:Stock:menu' (length=27)
    J'ai bien mon controller mais ce n'est meme pas celui qui m'interesse : c'est mon menu ...

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

Discussions similaires

  1. [2.x] probleme avec un formulaire crée dans la vue twig
    Par adel25 dans le forum Symfony
    Réponses: 1
    Dernier message: 11/11/2013, 00h58
  2. Probleme avec la copie des surfaces
    Par Black_Daimond dans le forum DirectX
    Réponses: 3
    Dernier message: 09/01/2003, 10h33
  3. probleme avec la touche F10
    Par b.grellee dans le forum Langage
    Réponses: 2
    Dernier message: 15/09/2002, 22h04
  4. Probleme avec fseek
    Par Bjorn dans le forum C
    Réponses: 5
    Dernier message: 04/08/2002, 07h17
  5. [Kylix] probleme avec un imagelist
    Par NicoLinux dans le forum EDI
    Réponses: 4
    Dernier message: 08/06/2002, 23h06

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