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 :

Système d'onglet sous symfony


Sujet :

Symfony PHP

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2015
    Messages : 24
    Points : 24
    Points
    24
    Par défaut Système d'onglet sous symfony
    Bonjour,

    je suis actuellement en train de développer une petite appli sous Symfony (je suis débutant avec ce framework, mais j'ai envie de me former dessus).
    Je ne suis clairement pas spécialiste du front end, et j'ai besoin d'une petite aide.
    Je voudrais faire un système d'onglet, j'ai mis en place une sidebar qui contient une liste de lien, et je voudrais que ces liens permettent de switcher ma div de contenu
    Puisqu'une image explique mieux que les mots, en voici une : Nom : 499942onglets.jpg
Affichages : 1016
Taille : 39,5 Ko
    J'ai pas mal programmé avec Angular, et donc par réflexe j'ai créé 4 templates correspondants à mes 4 liens (chacun contient "Je suis lien X")
    Avec ces 4 templates je me suis dit que je pouvais passer par le contrôleur pour switcher après avoir cliqué sur un des liens, mais je crois que ça va me recharger la page, ce que je ne veux pas.

    Est ce que je dois utiliser simplement du js avec un .show() .hide() ou existe t-il une meilleure solution (Comme l'idée du contrôleur) ?

    Merci

  2. #2
    Membre expert
    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
    Points : 3 004
    Points
    3 004
    Par défaut
    pour choisir la bonne technique il faut savoir aussi si les 4 templates sont lourdes ou pas ? passer d'un onglet à un autre avec attente ou sans attente ?

    si c'est quelque chose de léger un système de show, hide fera l'affaire.
    coté technique, un include pour chaque template à hide(sauf le 1er bien sur)

    si chaque template est assez volumineux je dirais qu'il serait bon de passer par de l'ajax.
    chaque lien fait appel à une requête ajax qui correspond à une action du controller, ce dernier renvois une vue que tu affiches dans le contenu.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2015
    Messages : 24
    Points : 24
    Points
    24
    Par défaut
    Les templates seront plutôt légers, ils seront composés peut être d'une quinzaine de champs chacun.
    Du coup je vais peut être partir sur un système de .show() et de .hide() un peu à la Backbone alors.

    Merci !

    EDIT : Cependant en fait même si l'idée est bonne je vois pas trop comment m'y prendre, j'ai fait des {{ include('montemplate') }} mais je ne vois pas trop comment les cacher avec un .hide() ?

  4. #4
    Membre expert
    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
    Points : 3 004
    Points
    3 004
    Par défaut
    j'ai bien sur, simplifié le code. je ne sais pas comment tu l’implémentes....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <div class="contenu">
      <div class="template1">
          {{ include('montemplate_1') }}
      </div>
      <div class="template2" style="display: none;">
          {{ include('montemplate_2') }}
      </div>
      <div class="template3" style="display: none;">
          {{ include('montemplate_3') }}
      </div>
    </div>
    ...
    le 1er reste affiché.


    pour le switch, à toi de trouver la meilleure technique. Il y a pleins de façons de faire.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ...
    $(".template1").hide();
    ...

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2015
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2015
    Messages : 24
    Points : 24
    Points
    24
    Par défaut
    Je ne sais même pas comment j'ai pu ne pas y penser !
    Merci beaucoup !

Discussions similaires

  1. [Tous VB] Système d'onglets
    Par Tisteba dans le forum Windows Forms
    Réponses: 3
    Dernier message: 29/08/2006, 16h36
  2. Spécifier type de système de fichiers sous linux
    Par rond24 dans le forum Administration système
    Réponses: 4
    Dernier message: 07/03/2006, 21h09
  3. création d'onglets sous delphi
    Par lerouzes dans le forum Composants VCL
    Réponses: 5
    Dernier message: 20/12/2005, 18h12
  4. [Système] le classpath sous windows 98
    Par helonear dans le forum Général Java
    Réponses: 2
    Dernier message: 23/06/2005, 09h48

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