按日期排序数据存储?

时间:2014-08-06 07:01:28

标签: sorting extjs4

我使用的是ExtJS 4.0.7版。我有一个包含字段的数据存储: recordName recordDate 。我想要做的是按日期对这些记录进行排序,但记录日期格式为: d / m / y 。排序记录后,我需要绑定网格面板这些记录。此时用户仍希望以d / m / y格式查看recordDate

总结一下,我在数据存储区中有一个recordDate字段,格式为d / m / y(因为用户希望在网格面板中以该格式看到它),但是要按日期排序我需要反转格式为y / m / d而不更改网格面板中的格式。

示例:
数据存储区中的记录日期 27/08/2012(这是用户希望在网格面板上看到的内容)

按日期排序的日期格式: 2012/08/27

1 个答案:

答案 0 :(得分:1)

正如@Evan所说:

  

如果它是日期对象,则它不相关。如果您将其存储为字符串,那么它不是日期排序,它是字符串排序。

您需要以类似的方式设置模型:

Ext.define('MyModel', {
   extend : 'Ext.data.Model',
   fields : [{
       name : 'recordDate',
       type : 'date',
       dateFormat : 'd/m/Y'
   },{
       name: 'recordName,
       type: 'string'
   }]
});

由于recordDate现在将成为日期对象,因此您可以在网格中使用日期列

   columns:[{
        text : 'Date',
        dataIndex : 'recordDate',
        xtype: 'datecolumn',   
        format:'d/m/Y' 
   },{
        text : 'Name',
        dataIndex : 'recordName'
   }]