Sencha Touch FormPanel с магазином - PullRequest
       27

Sencha Touch FormPanel с магазином

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

У меня есть магазин следующим образом.

var eventsStore = new Ext.data.Store({
    model: 'Event',
    sorters: [{
        property: 'OccurringOn',
        direction: 'DESC'
    }],
    proxy: {
        type: 'ajax',
        url: BaseURL + 'Events.php',
        api: {
            read: BaseURL + 'Events.php',
            create: BaseURL + 'Events.php'
        },
        reader: {
            type: 'xml',
            root: 'Events',
            record: 'Event'
        },
        writer: {
            type: 'xml',
            writeAllFields: false,
            root: 'Events',
            record: 'Event'
        }
    },
    getGroupString: function(record) {
        if (record && record.data.OccurringOn) {
            console.log(record.get('OccurringOn'));
            return record.get('OccurringOn').toDateString();
        }
        else {
            return '';
        }
    }
});

У меня также есть представление списка, в котором все события в порядке. У меня есть форма, которая позволяет пользователю добавлять новое событие, и у меня есть FormPanel для него. Панель FormPanel имеет панель инструментов с кнопкой Сохранить, которая при нажатии будет выполнять следующие действия.

var eventCard = It's a card

var newEventCard = eventCard.items.items[1];

var currentEvent = newEventCard.getRecord();

newEventCard.updateRecord(currentEvent);

var errors = currentEvent.validate();

// here I check errors and prompt user about them

var eventList = eventCard.items.items[0].items.items[0];
var eventStore = eventList.getStore();

eventStore.add(currentEvent);
eventStore.sync();
eventStore.sort( [ { property: 'OccurringOn', direction: 'DESC' } ] );
eventList.refresh();

Приведенный выше код добавляет две пустые строки в базу данных MySQL и копирует элементы представления списка событий с 3 пустыми новыми элементами. Почему это поведение и чего мне не хватает?

Если вы можете сказать мне, какие параметры отправляются в виде POST в Events.php, когда я синхронизируюсь, это очень ценится.

1 Ответ

1 голос
/ 09 октября 2011

Это была моя вина, я понял.Я повторял, когда был POST-запрос к службе.

...