2012-11-24 30 views
1

我在Sencha Touch 2中創建搜索表單。表單已創建,字段都在那裏。但是,我如何調用/ users/{param} url?我有一個商店,它可以加載「所有」用戶,但我想加載特定的數據.. Thx。如何傳遞參數以存儲以加載特定數據

編輯:

Ext.define('TCM.store.Users', { 
    extend: 'Ext.data.Store', 

    config: { 
     model: 'TCM.model.User', 
     sorters: 'name', 
     proxy: { 
      type: 'rest', 
      url: 'http://local.test.eu/app_dev.php/api/users' 
     } 
    } 
}); 

回答

4

你只需要得到你的店的代理,並設置extraParams

Ext.getStore('Users').getProxy().setExtraParams({ 
    param: myParam 
}); 

如果您所有的數據存儲已經加載,你還可以過濾它而不是重新加載它。

希望這有助於

+0

嘿,謝謝你的回答,並且對於遲到的回覆感到抱歉。我的服務器崩潰了,所以無法做很多工作。現在開始運行。因此,我正在使用我的商店獲取與搜索數據匹配的用戶。但搜索總是返回所有用戶,因爲我的商店在我的第一篇文章中配置了url。我怎樣才能解決這個問題? – mattyh88

2

您可以通過PARAMS像這樣

Ext.getStore('Users').load({ 
    params : { param : 'param1'} 
}); 

的store.load方法如果您需要建立具體根據網址參數,你應該重寫buildUrl方法代理

buildUrl : function (request) { 
      var url = this.getUrl(request),// /users/ 
       params = request.getParams() || {}; 

      url = url + params.param; // /users/param1 
      request.setUrl(url); 
      return this.callParent([request]); 
    } 
相關問題