Question

I'm trying to handle event after creating new record to ExtJS store and saving it to server. But I have a problem - write event firing only after update action. Documentation says:

@event write Fires if the server returns 200 after an Ext.data.Api.actions CRUD action. Success of the action is determined in the result['successProperty']property (NOTE for RESTful stores, a simple 20x response is sufficient for the actions "destroy" and "update". The "create" action should should return 200 along with a database pk).

Now I've such response from server: [{"tid": 5, "action": "CityGrid", "type": "rpc", "method": "create", "result": {"msg": "saved", "data": {}, }}]

I guess that adding a database.pk of created object to server response should resolve problem but I've no idea how to do it. I've tried this ... "data": {"Id":my_object.id} but with no effect.

Was it helpful?

Solution

This example: http://dev.sencha.com/deploy/dev/examples/writer/writer.html Creating return this:

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

So just return store record for new object in Reader.root property.

OTHER TIPS

Try setting idProperty of your JsonReader to the name of your PK. Also, I think that data: should be an array "data": [{"id": ....}] but I might be wrong :P

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top