2010-12-16 25 views
1

私はサーバーからデータをロードするデータストアを作成しています。私はどのように私はプロキシにパラメータを渡すことができますかと思います。パラメータ付きのextjs投稿

var dataStore = new Ext.data.JsonStore({ 
proxy:'productSearch.php', 
root:'products', 
fields:['title', 'image', 'inStock', 'price', 'category', 'manufacturer'] 
}); 

答えて

7

私は通常、私はこのようなフィールドを定義するためにも、この

var dataStore = new Ext.data.JsonStore({ 
    url: 'productSearch.php' 
    root: 'products', 
    baseParams: { //here you can define params you want to be sent on each request from this store 
    param1: 'value1', 
    param2: 'value2' 
    }, 
    fields: [...] 
}); 

dataStore.load({ 
    params: { //here you can define params on 'per request' basis 
    param3: 'value3' 
    } 
}); 

ようにそれを好む実行します。ここで

fields: [ 
    {name: 'title', mapping: 'title', type: 'string'}, 
    {name: 'image', mapping: 'image', type: 'string'}, 
    {name: 'inStock', mapping: 'inStock', type: 'bool'}, 
    {name: 'price', mapping: 'price', type: 'float'}, 
    {name: 'category', mapping: 'category', type: 'int'}, 
    {name: 'someDate', mapping: 'someDate', type: 'date', dateFormat: 'Y-m-d'}, 
] 

2つのこと:私は割り当て

  1. 型を使用して、ストアに正しいものがロードされるようにしますデータ型。それは文字列の日付をJavaScriptのDate()オブジェクトに変換します。

  2. JSONのどのフィールドをストアのどのフィールドに一致させるかを指定するには、 'mapping'パラメータを使用します。何らかの理由でJSON形式が変更された場合は、ここで変更する必要があります。

関連する問題