2009-10-12 12 views
6

Tengo un objeto que estoy serializando a un objeto JSON utilizando JSON.Net. Este objeto está siendo consumido por una tienda JSON que está conectada a un GridPanel ExtJs.Consumir fechas JSON en un gridpanel EXTJs

Todos los campos excepto los de fecha se procesan bien, la única forma en que puedo mostrar campos de fecha es si utilizo columnas de texto. Pero luego obtengo el siguiente/Date (1293746400000 + 0200)/renderizado como texto que es inútil.

Sé que necesito convertir eso de alguna manera a un objeto de fecha adecuado, pero no tengo idea de cómo atm.

Avíseme si necesita más información.

Respuesta

1

JSON.Net tiene varios convertidores de fecha y hora para ayudarlo a manejar esto. Vea this blog post para algunos detalles. Entonces podría usar el JavaScriptDateTimeConverter por ejemplo, luego evaluar el resultado en un objeto de fecha JS. No puedo recordar cómo una tienda Ext lidiará con eso, pero tal vez te guíe en la dirección correcta.

+0

Gracias a todos Lo que necesitaba hacer era cambiar el convertidor a JavaScriptDateTimeConverter y se ejecutó correctamente, obviamente tuve que hacer las columnas 'datecolumn' y establecer el tipo de datos hasta la fecha. – RC1140

1

Eche un vistazo a here.

En la mayoría de los casos puede pasar su propia cadena formateada (utilizo "aaaa-MM-dd" en mis proyectos ya que no necesito tiempo) y la reutilizo en el otro lado (formatéelo como válido constructor de fecha).

0

En los campos que corresponden a la fecha en su JsonStore, puede establecer el tipo de campo en 'fecha' y su formato de fecha en 'M $'. Funciona como un campeón.

7

"M $" en el ejemplo anterior es engañoso, es "MS". Aquí es un ejemplo claro de que trabaja en extjs 4. El campo 'LastFellOffCliff' está dispuesto a ser una fecha con el formato de entrada en el estilo de fecha Microsoft JSON: "/Date(...)/"

Ext.define('ACME.model.CoyoteModel', { 
    extend: 'Ext.data.Model', 
    fields: [ 
       { name: 'CoyoteID', type: 'int' }, 
       'Nickname', 
       { name: 'LastFellOffCliff', type: 'date', dateFormat: 'MS' }, 
       'Notes' 
      ] 

}); 
Cuestiones relacionadas