ExtJS. Non può prendere evento scrittura dopo store.save () con creare l'azione
-
11-10-2019 - |
Domanda
Sto cercando di gestire l'evento dopo la creazione di nuovo record per memorizzare ExtJS e salvandolo al server. Ma ho un problema - evento scrittura sparare solo dopo l'azione di aggiornamento. Documentazione dice:
Gli incendi di scrittura @event se il server restituisce 200 dopo un azione Ext.data.Api.actions CRUD. Il successo dell'azione è determinato in il risultato [ 'successProperty'] proprietà (Nota per i negozi RESTful, un semplice 20x risposta è sufficiente che le azioni "Distruggere" e "update". Il "creare" azione dovrebbe deve restituire 200 lungo con un pk database).
Ora ho come risposta dal server: [{"tid": 5, "action": "CityGrid", "type": "rpc", "method": "create", "result": {"msg": "saved", "data": {}, }}]
credo che l'aggiunta di un database.pk di oggetto creato alla risposta server dovrebbe risolvere il problema, ma non ho idea di come farlo. Ho provato questo ... "data": {"Id":my_object.id}
, ma senza alcun effetto.
Soluzione
In questo esempio: http://dev.sencha.com/deploy /dev/examples/writer/writer.html La creazione di questo ritorno:
{
"success":true,
"message":"Created record",
"data": {"first":"sdfds","last":"sdfsdf","email":"asd@sdfs.sd","id":10}
}
Quindi, solo tornare record di vendite per il nuovo oggetto nella proprietà Reader.root.
Altri suggerimenti
Prova a impostare idProperty
del JsonReader per il nome del PK. Inoltre, penso che data:
dovrebbe essere un array
"data": [{"id": ....}]
ma potrei sbagliarmi: P