Sencha Touch Store с полем даты - PullRequest
       20

Sencha Touch Store с полем даты

0 голосов
/ 24 сентября 2011

У меня есть поле Model with Date и Store, которое загружается из XML с тем же полем даты, что и строка. Будет ли сенча автоматически анализировать его на Date или мне нужно будет сделать это вручную?

Ext.regModel('News', {
    idProperty: 'Id',
    fields: [
        { name: 'Id', type: 'int' },
        { name: 'Title', type: 'string' },
        { name: 'PostedOn', type: 'date' },
        { name: 'PostedBy', type: 'string' },
        { name: 'Details', type: 'string' }
    ]
});

var newsRemoteStore = new Ext.data.Store({
    model: 'News',
    sorters: [{
        property: 'PostedOn',
        direction: 'DESC'
    }],
    proxy: {
        type: 'ajax',
        url: BaseURL + 'News.php',
        reader: {
            type: 'xml',
            root: 'News',
            record: 'New'   
        }
    },
    getGroupString: function(record) {
        if (record && record.data.PostedOn) {
            return record.get('PostedOn').toDateString();
        }
        else {
            return '';
        }
    }
});

Я спрашиваю, потому что поле Дата пусто, хотя в ответе xml есть дата e, g.

<PostedOn>2011-07-04 16:00:19</PostedOn>

Ответы [ 2 ]

5 голосов
/ 09 февраля 2012

Версия 1.1 Sencha Touch поддерживает авто, строку, int, число с плавающей точкой, логическое значение и дату (см. Документы API Sencha Touch 1.1

1 голос
/ 26 сентября 2011

Нет, sencha поддерживает только 4 типа данных: int, float, string и auto.

Вы должны установить поле даты в виде строки, а затем преобразовать его в объект даты в getGroupString, чтобы сравнить его с другим объектом даты. Читайте все об этом здесь: http://www.sencha.com/blog/ext-js-4-anatomy-of-a-model

...