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

Ext JS / Sencha Discussion :

Affecter un store différent pour une même vue


Sujet :

Ext JS / Sencha

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    624
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 624
    Par défaut Affecter un store différent pour une même vue
    Bonjour à tous,

    j'ai une View "MaVue" dans laquelle j'ai 3 boutons qui ouvre un fenêtre qui contient un xtype: "Chart".

    J'ai un Model mais qui est utilisé par 3 stores (Auteurs (nom prénom), Acteurs (nom prénom), Producteurs (nom prénom))

    Comment puis-je affecté lors de l'affichage de mon Chart le bon Store correspondant au bouton clické ?

    entre le Create et le Show comment puis-je affecter le bon Store ?

    Dans ma "MaVue" j'ai:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    onClickChartAuteurs: function() {
            var SingleChart = Ext.create('PP.view.chart.MySingleChart', {});
            SingleChart.show();        
        },
     
    onClickChartActeurs: function() {
            var SingleChart = Ext.create('PP.view.chart.MySingleChart', {});
            SingleChart.show();        
        },
    ....
    D'avance merci pour vos conseils,
    Bruno

  2. #2
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut
    Je ne suis pas sur que ce soit la bonne façon d'approcher le problème.

    personnellement je ferais un seul store personnes
    et suivant le bouton cliqué je chargerait les données d'un métier particulier.

    Person (nom, prénom)
    et tu fais un load des données
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    store.load({
       "metier": monMetier
    });
    côté serveur du récupère le paramètre et tu fait ta requête pour récupérer les données correspondant au métier
    A+JYT

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    624
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 624
    Par défaut
    hélas je ne peux pas faire comme ça car les 3 stores sont utilisés sur ma fenêtre principale dans des Grids.

    C'est sur cette fenêtre principale que j'ai mes 3 boutons. J'ai donc déjà les 3 stores remplis.

    Il n'y a aucun moyen d'accéder à la propriété Store de ma vue ? (qui se trouve dans un item Chart de ma window)

    J'ai pensé à mettre dans le create tout mon item Chart mais je trouve ça très lourd et bon propre car je dois écrire 3 fois la même chose.
    Ou alors dans ma Window mettre un item xtype: 'mychart' et créer une vue et un controller "mychart" puis là je pense que cela serait plus simple d'accéder
    à la propriété Store de "mychart" non ? qu'en pensez vous ?

    merci pour vos conseils,

  4. #4
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut
    il te faut récupérer le chart qui est dans la vue
    le composant possède une méthode bindStore

    http://docs-origin.sencha.com/extjs/...thod-bindStore

    A+JYT

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    624
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 624
    Par défaut
    c'est exactement ce que j'ai essayé ce W.E. mais hélas j'ai une erreur comme quoi le store est indéfini alors qu'un console.log de ma variable tstrore donne bien un résultat.
    TypeError: store is undefined
    Mais peut être je m'y prends mal ? j'ai l'impression que le create attend un store et comme je ne le déclare pas, il pète l'erreur avant !

    voici mon bout de code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
        onClickChartAPP: function() {
            var tstore = Ext.getStore('PP.store.patent.SlavesAPC');
     
            var SingleChart = Ext.create('PP.view.chart.MySingleChart', {
                title: 'Applicants'
            });
            this.getRefWorkZone().add(SingleChart);
     
            this.getRefMyChart().bindStore(tstore);
     
            SingleChart.show();
     
        },

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    624
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 624
    Par défaut
    Bon, je pense avoir trouvé une solution.

    Je crée un store EMPTY que j'affecte directement dans mon chart.
    Puis lors de la création du Chart je fais un BindStore !

    Cela fonctionne bien, mais est-ce une bonne solution ?

Discussions similaires

  1. Réponses: 17
    Dernier message: 09/02/2010, 16h22
  2. espace colonne différente pour une même feuille
    Par stéphanie123 dans le forum Excel
    Réponses: 4
    Dernier message: 05/12/2009, 09h58
  3. <meta content="charset=xx"> différent pour une même page de code
    Par laurentSc dans le forum Balisage (X)HTML et validation W3C
    Réponses: 11
    Dernier message: 19/03/2009, 08h13
  4. Temps d'exécution différent pour une même tâche
    Par franculo_caoulene dans le forum Général Dotnet
    Réponses: 2
    Dernier message: 26/03/2008, 08h41
  5. Icone différente pour une même extention ?!
    Par NicolasJolet dans le forum Autres Logiciels
    Réponses: 2
    Dernier message: 09/03/2006, 10h24

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