2011-08-16 83 views
1

我已經閱讀了Sencha教程,API和論壇一段時間,但碰到了一面磚牆。我有一個存儲Web應用程序數據的mySQL/PHP後端。我有以下Sench/ExtJS的構建:將商店更新寫回服務器

App.stores.user = new Ext.data.Store({ 
    model: 'User', 
    proxy: new Ext.data.AjaxProxy({ 
     url: 'app/stores/scripts/connect.php', 
     extraParams: { 
      method:'user', 
      user_id: 3 
     }, 
     reader: { 
      type:'json', 
      root:'root' 
     } 
    }), 
    autoLoad:true 
}); 

數據加載到店很好,但我有直接更新一個用戶實例的形式。

App.controllers.account = new Ext.Controller({ 
    save: function (options) { 
     options.user.set(options.data); 
     options.user.save(); // Generates error: Uncaught Error: You are using a ServerProxy but have not supplied it with a url. 
    } 
}); 

我怎樣才能成功地實現/掛鉤函數寫髒記錄回服務器?請求如何準備並通過?

謝謝。

回答

1

Uptil Ext Js 3.3.1在執行CRUD操作時,商店需要配置writer。只讀是不需要的。這就是您的商店被加載的原因,但是在寫入操作期間出現錯誤。在你的情況下,你必須指定一個JsonWriter。另外,如果您沒有以寧靜的方式使用商店,那麼您還需要指定一個HttpProxy對象來告知商店在哪個網址發佈store上的創建/更新/刪除。

查看文檔Ext 4.我也應該在這裏類似。

+0

如何爲商店指定HttpProxy對象? – Mark