2012-06-04 76 views
0

我最近開始使用sencha touch 2。我正在研究一個CRUD模型,並且完成了整個腳本。表單工作的很好,但只適用於「本地存儲」。代碼如下所示在Sencha Touch 2中創建CRUD模型

App.models.User = Ext.regModel('User', { 
fields: [ 
    { 
     name: 'active', 
     type: 'string' 
    }, { 
     name: 'id', 
     type: 'int' 
    }, { 
     name: 'name', 
     type: 'string' 
    }, { 
     name: 'resource_type', 
     type: 'string' 
    } ], 

validations: [ 
    { 
     type: 'presence', 
     name: 'name' 
    } ],proxy: { 
    type: 'localstorage', 
    id: 'sencha-users'}}); 

但我想創建/讀取/更新/刪除使用特定的API的數據,因此將不得不使用REST/Ajax代理。但是,當我使用ajax代理時,更改不會反映在api的url中。 如果有人願意幫助,我可以分享更多的細節。 感謝

+0

你的意思是「變化未反映在api的url中」? –

+0

這個url定義了api- http://svc2-staging.mypsn.com/v1/cams/resources 所以我基本想要的是,當我在表單中輸入數據時,它應該在那裏更新但目前,我可以填寫表格,但數據僅存儲在本地存儲中。 – Agrim

回答

0

最簡單的方法是,當...說你的提交按鈕被按下,則觸發一個POST請求到您的API:

Ext.Ajax.request({ 
     url: API_URL, 
     params: {your_params_here}, 

     success: function(result) { 
      // successfully saved on the server 
     }, 

     failure: function(){ 
      // failed 
     } 
    }); 

這意味着你的後端服務器必須有一個API用來保存數據,例如:

YOURDOMAIN API = save_data &的param1 = ABC & param2的= XYZ