Cuando usar un HttpProxy
Hola a todo, quisiera que me aclaren una duda, tengo un grid y quiero cargar su store pero usando un HttpProxy pero no me carga los datos, a través del firebug veo que el servidor me envia los datos, vi que algunos ejemplos que lo usan para cargas su datos, y cuando utilizar el HttpProxy en mis aplicaciones
Ext.ns('com.quizzpot.tutorial'); com.quizzpot.tutorial.GridJsonTutorial = { init: function(){ //code goes here //Haciendo este JsonStore me carga el store de mi grid /* var store = new Ext.data.JsonStore({ url: 'gridjson.php', root: 'data', fields: ['city',{name:'visits',type:'float'},{name:'pageVisits',type:'float'},'averageTime'] }); */ //Pero cuand hago con un HttpProxy no me carga mi store de mi grid var store = new Ext.data.JsonStore({ proxy: new Ext.data.HttpProxy({ url: 'gridjson.php', }), remoteSort: true, reader : new Ext.data.JsonReader({ root: "data", fields: [ {name: 'city'}, {name: 'visits', type:'float'}, {name: 'pageVisits', type:'float'}, {name: 'averageTime'} ] }) }); store.load(); //grid.store.reload(); //Creando el objeto Ext.grid.ColumnModel var myColumnModel = new Ext.grid.ColumnModel([ new Ext.grid.RowNumberer(), new Ext.grid.CheckboxSelectionModel(), {header:'City', dataIndex:'city',sortable: true}, {header:'Visits', dataIndex:'visits',sortable: true}, {header:'Page/Visits', dataIndex:'pageVisits',sortable: true}, {header:'Average Time', dataIndex:'averageTime', width:150,sortable: true} ]); var grid = new Ext.grid.GridPanel({ store: store, // <--- le asignamos el store con la información a utilizar cm: myColumnModel,//referencia al columnModel border: false, stripeRows: true }); var win = new Ext.Window({ title: 'Grid example', layout: 'fit', width: 510, height:350, items: grid }); win.show(); } } Ext.onReady(com.quizzpot.tutorial.GridJsonTutorial.init,com.quizzpot.tutorial.GridJsonTutorial);
el JsonStore te crea automáticamente el reader, así que no es necesario crearle uno, intenta lo siguiente:
//Pero cuand hago con un HttpProxy no me carga mi store de mi grid var store = new Ext.data.JsonStore({ proxy: new Ext.data.HttpProxy({ url: 'gridjson.php' }), root: 'data', fields: ['city',{name:'visits',type:'float'},{name:'pageVisits',type:'float'},'averageTime'] });Bueno, espero te funcione y ahi nos avisas. saludos
Gracias, me funciono ahora la duda que tengo es cuando emplear el HttpProxy.
//Cuando emplear de esta forma var store = new Ext.data.JsonStore({ url: 'gridjson.php', root: 'data', fields: ['city',{name:'visits',type:'float'},{name:'pageVisits',type:'float'},'averageTime'] }); //Y cuando de esta otra var store = new Ext.data.JsonStore({ proxy: new Ext.data.HttpProxy({ url: 'gridjson.php' }), root: 'data', fields: ['city',{name:'visits',type:'float'},{name:'pageVisits',type:'float'},'averageTime'] });
¿Conoces a alguien que pueda responder esta pregunta? Comparte el link en Twitter o Facebook
Es necesario registrarse para poder participar en el foro! Si ya tienes una cuenta puedes entrar y comentar en este foro.