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 :

Echanges entre le datastore et le serveur


Sujet :

Ext JS / Sencha

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

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    c'est ça que je ne comprends pas

    si tu viens de modifier l'enregistrement dans ton form lorsque tu clique sur save il est mis dans le Store ton store est donc à jour. le store détecte qu'il a eu un changement local et envoi les données au serveur pour qu'il traite ces données et les mette en base.
    ton store est donc déjà OK je ne vois pas pourquoi tu voudrais recharger les données de cet enregistrement.

    par contre ce qu'il peut se passer c'est que autres utilisateurs aient modifié des données. et là ton store n'est pas à jour. c'est pour ça que je disais que ton taskRunner peut demander les changements au serveur.

    A+JYT

  2. #42
    Futur Membre du Club
    Profil pro
    Consultant fonctionnel
    Inscrit en
    Septembre 2012
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2012
    Messages : 29
    Points : 5
    Points
    5
    Par défaut
    En effet, pour moi le Store est à jour. Mais je pensais qu'en faisant recharger le record que je viens de modifier moi, cela impacterai aussi les autres utilisateurs. Et vice versa, si un autre utilisateur fait une modification et que le rechargement du record qu'il vient de modifier se fasse, je serais impacté.
    Ca ne marche visiblement pas de cette façon !

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

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    ben si mais si tu ne charge qu'un seul enregistrement dans ton store
    tu n'a pas les autres modifs.

    soit tu as toutes les données (ou une page) et tu demande au serveur si tu as besoin de rafraîchir tes données.

    soit tu n'a qu'un seul enregistrement pur ton édition et tu n'a pas besoin de rafraichir vu que tu viens de le modifier.

    A+JYT

  4. #44
    Futur Membre du Club
    Profil pro
    Consultant fonctionnel
    Inscrit en
    Septembre 2012
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2012
    Messages : 29
    Points : 5
    Points
    5
    Par défaut
    Si je dois reformuler ma question, je dirais :
    Supposons qu'il y a 2 utilisateurs U1 et U2 qui sont en train de travailler sur la même grid. U1 fait une modification de l'enregistrement E1. Il appelle le store.load() en spécifiant l'id de E1. Est ce que U2 voit automatiquement la mise à jour de E1 ?
    Plus généralement, après tout, l'appel du store.load() pour tout le store impacte bien tous les utilisateurs connectés. Ces derniers voient bien toutes les modifications faites par les uns et les autres. Donc pourquoi ce qui marche pour tout le store ne mercherait pas pour un seul enregistrement ? C'est un peu ça ma question. Pour moi c'est pas du tout évident.

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

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    je croyais que tu voulais charger qu'un seul enregistrement dans le store.

    tu ne veux recharger que celui que tu édite.

    la question que tu pose et qui est vrai pour toute application web est
    comment gérer les accès concurrent.

    comment gérer le fait avoir deux user qui éditent le même enregistrement.

    il n'y a pas de solution pleinement satisfaisante.
    ça dépends beaucoup du contexte.

    une solution consiste à gérer un verrou sur le serveur
    au moment d'éditer tu demande un verrou si tu l'as tu édite sinon tu refuse l'édition
    ainsi un seul utilisateur peut éditer
    mais il faut gérer la relâche du verrou en fin d'édition et surtout si l'utilisateur reste en plan. (quitte l'appli)

    autre solution autoriser l'édition et gérer le confli lors de la sauvegarde.

    mais il est difficile de permettre l'édition simultanée tout en gardant les modif des deux utilisateur comment savoir quel champs garder

    A+JYT

  6. #46
    Futur Membre du Club
    Profil pro
    Consultant fonctionnel
    Inscrit en
    Septembre 2012
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2012
    Messages : 29
    Points : 5
    Points
    5
    Par défaut
    Non on se comprends toujours pas.
    Les accès concurents ce n'est pas ce qui m'intéresse.
    Si je reprends l'exemple donné dans mon précédent post, je veux juste savoir lorsque U1 fait un store.load() sur l'enregistrement qu'il vient de modifier, est ce que U2 voit sa grid mise à jour. U2 ne modifie rien, il ne fait que consulter.

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

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    c'est donc bien ce que je décrivais
    ton run task intérroge le serveur pour savoir si l'y a eu des changement
    et si c'est le cas demande au serveur les données qui ont changé
    ainsi le store est mis a jour.

    ça évite de tout mettre à jour et on est sur d'avoir les données fraiche même si PLUSIEURS autres utilisateurs ont modifié PLUSIEURS autres enregistrement.

    Je ne vois pas pourquoi l'utilisateur qui n'a rien modifié demanderais au serveur si UN enregistrement en particulier à été modifié par un autre utilisateur.

    A+JYT

Discussions similaires

  1. Echange de données entre application Android et un serveur web
    Par ykharroubi dans le forum API standards et tierces
    Réponses: 3
    Dernier message: 26/09/2012, 11h47
  2. Réponses: 8
    Dernier message: 10/06/2011, 10h44
  3. echanges entre client et serveur
    Par sadatesso dans le forum Web & réseau
    Réponses: 0
    Dernier message: 23/08/2009, 14h57
  4. 9.2 Echange entre serveurs
    Par lunab54 dans le forum Oracle
    Réponses: 1
    Dernier message: 24/12/2005, 17h38
  5. [c-linux]echange entre 2 sockets
    Par .:dev:. dans le forum Développement
    Réponses: 2
    Dernier message: 11/06/2004, 19h13

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