X-Git-Url: http://git.ithinksw.org/extjs.git/blobdiff_plain/ee06f37b0f6f6d94cd05a6ffae556660f7c4a2bc..c930e9176a5a85509c5b0230e2bff5c22a591432:/examples/writer/writer.html?ds=sidebyside diff --git a/examples/writer/writer.html b/examples/writer/writer.html new file mode 100644 index 00000000..dbffd79b --- /dev/null +++ b/examples/writer/writer.html @@ -0,0 +1,71 @@ + +
+ +This example shows how to implement a Writer for your Store. A Writer-enabled Store frees you from having to manually compose Ajax requests +to perform CRUD actions on a Store.
+Note that the js is not minified so it is readable. See writer.js, UserForm.js and +UserGrid.js.
+ +The HttpProxy plugged into the store in this example uses the new api configuration instead of an url. +A simple MVC-like php backend has been created for this example which simulates a database by storing records in $_SESSION. See the file /remote/app/controllers/users.php. You may have to configure +your web-server to allow scripts to be executed in the /examples directory.
+ +
+var proxy = new Ext.data.HttpProxy({
+ api: {
+ read : 'app.php/users/read',
+ create : 'app.php/users/create',
+ update : 'app.php/users/update',
+ destroy : 'app.php/users/destroy'
+ }
+});
+
+
+Take note of the requests being generated in Firebug as you interact with the Grid and Form.
+ +An Error has been simulated on the server-side: Attempting to update a record having ODD-numbered id will generate this errror. +Responses from the update action will have successProperty === false along with a message. This error can be handled by +listening to the "exception" event upon your Store.
+ +
+exception : function(proxy, type, action, options, res, arg) {
+ if (type === 'remote') {
+ Ext.Msg.show({
+ title: 'REMOTE EXCEPTION',
+ msg: res.message,
+ icon: Ext.MessageBox.ERROR
+ });
+ }
+}
+
+Note: This new "exception" event supercedes the old loadexception event which is now deprecated.
+ +