2011-09-28 110 views
0

我有一個商店如下。Sencha觸摸FormPanel與商店

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

這是我的錯,我想通了。當有POST請求到服務時,我正在迴應。