ExtJS. Ne peut pas attraper événement écrire après store.save () avec créer une action

StackOverflow https://stackoverflow.com/questions/4488891

Question

Je suis en train de gérer l'événement après la création nouveau record pour stocker ExtJS et l'enregistrer sur le serveur. Mais j'ai un problème - événement d'écriture tir seulement après une action de mise à jour. Documentation dit:

  

Les feux @event d'écriture si le serveur   200 retourne après un   l'action Ext.data.Api.actions CRUD.   Le succès de l'action est déterminée   le résultat [ « successProperty »] propriété   (NOTE pour les magasins RESTful, un simple 20x   réponse est suffisante pour les actions   « Détruire » et « mise à jour ». Le « créer »   l'action devrait devrait revenir 200 le long   avec une base de données pk).

Maintenant, j'ai cette réponse du serveur: [{"tid": 5, "action": "CityGrid", "type": "rpc", "method": "create", "result": {"msg": "saved", "data": {}, }}]

Je suppose que l'ajout d'un database.pk d'objet créé à la réponse du serveur doit résoudre le problème, mais je ne peux pas savoir comment le faire. J'ai essayé ce ... "data": {"Id":my_object.id} mais sans effet.

Était-ce utile?

La solution

Cet exemple: http://dev.sencha.com/deploy /dev/examples/writer/writer.html Création retour ceci:

{
    "success":true,
    "message":"Created record",
    "data": {"first":"sdfds","last":"sdfsdf","email":"asd@sdfs.sd","id":10}
}

Il suffit donc de revenir record magasin pour nouvel objet dans la propriété Reader.root.

Autres conseils

Essayez de régler idProperty de votre JsonReader au nom de votre PK. Aussi, je pense que data: devrait être un tableau "data": [{"id": ....}] mais je peux me tromper: P

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top