1. #1
    Ext User
    Join Date
    Aug 2010
    Posts
    10
    Vote Rating
    0
    newbo is on a distinguished road

      0  

    Question How to reload a store ?

    How to reload a store ?


    Hi everyone,

    Everything is in the title. I have a Ext.data.GroupingStore and I want to reload it after having clicked on a button.

    I try to use the load() function but it didn't work.

    My store :

    var store = new Ext.data.GroupingStore({
    proxy: new Ext.data.HttpProxy({
    url: 'Name of my servlet', timeout: 300000}),
    reader: new Ext.data.JsonReader({
    root: "result",
    fields: [
    {name: "Id"},
    {name: "movieTitle"},
    {name: "type"}
    ]
    }),
    remoteSort: false,
    sortInfo: {
    field: 'type',
    direction: 'ASC'
    },
    data: {result:rs.storeList},
    fields: ["Id","movieTitle","type"],
    groupField: "type"
    });

    in my function called when the button is clicked :

    store.load();

    I know load() function is asynchronous. i see with firebug that my rs.storeList has been updated but i don't know how to use my updated list.

    Any tips ?

  2. #2
    Sencha - Ext JS Dev Team Animal's Avatar
    Join Date
    Mar 2007
    Location
    Notts/Redwood City
    Posts
    30,507
    Vote Rating
    56
    Animal has a spectacular aura about Animal has a spectacular aura about Animal has a spectacular aura about

      0  

    Default


    Look at the API to see if there's a reload function?

  3. #3
    Ext User
    Join Date
    Aug 2010
    Posts
    10
    Vote Rating
    0
    newbo is on a distinguished road

      0  

    Default


    I saw the REload() function but i don't know why i can't make it work.

  4. #4
    Sencha - Ext JS Dev Team Animal's Avatar
    Join Date
    Mar 2007
    Location
    Notts/Redwood City
    Posts
    30,507
    Vote Rating
    56
    Animal has a spectacular aura about Animal has a spectacular aura about Animal has a spectacular aura about

      0  

    Default


    What debugging have you done?

  5. #5
    Ext User
    Join Date
    Aug 2010
    Posts
    10
    Vote Rating
    0
    newbo is on a distinguished road

      0  

    Default


    Quite simple actually.
    I put two alerts : one before the reload() function call and the same after : alert(store.getCount()). Both display the same number.

  6. #6
    Sencha - Community Support Team Condor's Avatar
    Join Date
    Mar 2007
    Location
    The Netherlands
    Posts
    24,246
    Vote Rating
    94
    Condor has much to be proud of Condor has much to be proud of Condor has much to be proud of Condor has much to be proud of Condor has much to be proud of Condor has much to be proud of Condor has much to be proud of Condor has much to be proud of

      0  

    Default


    Loading is asynchronous!!!

    You can only check the number of records AFTER the new data from the server is received.

    Try:
    Code:
    store.reload({
      callback: function(){
        alert(store.getCount());
      }
    });

  7. #7
    Ext User
    Join Date
    Aug 2010
    Posts
    10
    Vote Rating
    0
    newbo is on a distinguished road

      0  

    Default


    Still the same number even if i use your code Condor.
    I don't know what to do. The most frustating is that I can see in the servlet response displayed by firebug the result I want.

  8. #8
    Sencha - Ext JS Dev Team Animal's Avatar
    Join Date
    Mar 2007
    Location
    Notts/Redwood City
    Posts
    30,507
    Vote Rating
    56
    Animal has a spectacular aura about Animal has a spectacular aura about Animal has a spectacular aura about

      0  

    Default


    Are you saying the new Records are not being loaded? I don't understand what the problem is.

  9. #9
    Ext User
    Join Date
    Aug 2010
    Posts
    10
    Vote Rating
    0
    newbo is on a distinguished road

      0  

    Default


    When I call the reload() function, I see in the firebug console that my servlet is actually called and returned the right list. But the data in my store remain the same.

  10. #10
    Ext User
    Join Date
    Aug 2010
    Posts
    10
    Vote Rating
    0
    newbo is on a distinguished road

      0  

    Default


    Yeah, you're right, the new Records aren't being loaded from the servlet response.

Similar Threads

  1. When to reload a store
    By douggiefox in forum Ext 3.x: Help & Discussion
    Replies: 2
    Last Post: 27 Jan 2010, 12:39 AM
  2. Store Reload
    By dirkpitt_10 in forum Ext 3.x: Help & Discussion
    Replies: 5
    Last Post: 9 Nov 2009, 4:22 AM
  3. [Solved]store.getCount() after store.reload()
    By adbox in forum Ext 2.x: Help & Discussion
    Replies: 8
    Last Post: 6 Feb 2009, 1:49 PM
  4. Mask a grid before store.reload() method and Unmask after store.reload()
    By faqlcp in forum Ext 2.x: Help & Discussion
    Replies: 5
    Last Post: 23 Nov 2008, 10:05 AM

Thread Participants: 2

Tags for this Thread