Comment charger un seul enregistrement dans un "store" ?

Les deux auteur et traducteur

Site personnel

Traducteur :

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

I. Démarche

Habituellement, un store charge une liste d'enregistrements. Mais si vous avez besoin de n'en charger qu'un seul, faites ceci :

 
Sélectionnez
var id = 9; //un exemple d'id d'enregistrement

var contactsStore = Ext.StoreManager.get('contacts');

contactsStore.load({
  id: id, //positionnez l'id ici
  scope:this,
  callback: function(records, operation, success){
    if(success){
      var contact = records[0];
      //suite des actions
    }
  }
});

II. Résultat

Ce code va envoyer une requête asynchrone à votre serveur en utilisant le store ou le proxy de son modèle et en passant par l'api read. L'URL est du style :

 
Sélectionnez
/api/contacts/read?id=9

III. Remerciements

Cet article a été publié avec l'aimable autorisation de Neil McGuigan. L'article original peut être lu sur le blog ExtJS TutorialsExtJS Tutorials : How to load a single record into a storeHow to load a single record into a store.
Je remercie également djibril pour sa relecture rapide.

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

  

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2012 Neil McGuigan. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.