2012-01-28 2 views
5

상점에 원격 필터를 수행하고 있습니다. 이 같은ExtJS에서 store.load (config) 매개 변수를 미리 정의 된 매개 변수로 제한하지 않고 어떻게 만드나요?

I 코드 뭔가 :

myStore.load({ 
    limit: 8, 
    foo: 'foo is never sent', 
    filters:[{'property':'some property','value':30,'comparison':'lt','field':'age'}] 
}); 

그것은 아래 매개 변수, GET 방식을 사용하여 서버에 전송 끝 (크롬/불을 지르고에서)

_dc:1327757119914 
page:1 
start:0 
limit:8 
filter:[{"property":"some property","value":30}] 

요청 URL :

myServerPage.php?_dc=1327757119914&page=1&start=0&limit=8&filter=%5B%7B%22property%22%3A%22some%20property%22%2C%22value%22%3A30%7D%5D 

'foo'가 누락되었습니다. 더 중요한 것은 통과하는 'filter'객체에서 'property'및 'value'만 sen이었습니다. 티. (나는이 두 가지가 미리 정의되어 있고 필터 설정이 다른 키와 값을 받아들이지 않는다고 생각한다.)

load()를 사용하여 서버에 매개 변수를 보내려면 어떻게해야합니까?

+0

난 당신이뿐만 아니라 * foo는 * 전송되지 않습니다 때문에, * 실제 * 예제와 함께 질문을 향상시킬 필요가 있다고 생각합니다,하지만 둘은 * 필터 *입니다 - 대신 당신은 당신이 조언을 해주셔서 감사합니다. * 매우 * 정확하지 않은 * 다음과 같은 것을 * 보내고 * 필터 * 필터 *가 아닌 * –

+0

필터를 포함한다고 말하십시오. 좀 더 이해하기 쉽게 편집했습니다. – gfaceless

답변

4
myStore.load({ 
    params: { 
    foo: 'foo' 
    } 
}) 
+0

예, 작동합니다! 감사. 필터 부분은 어떻습니까? – gfaceless

6

또 다른 방법 :

myStore.getProxy().extraParams= {search: "something"} 
+0

이 방법을 사용하면 비행 중에 매개 변수를 설정할 수 있습니다. 이 솔루션은 더 좋습니다 –

+0

투표 해 주셔서 감사합니다. 실제로이 솔루션은 여러 요청에서 매개 변수를 보존하려는 경우 더 좋습니다. params 메소드를 사용하는로드는 실시간 데이터에 더 좋습니다. – dbrin

+0

예,하지만 Ext.Net을 사용할 때 항상로드 메서드를 호출 할 수는 없지만로드 전에로드간에 매개 변수를 변경해야합니다. 이 경우 귀하의 방법이 더 좋습니다. –