2013-04-30 13 views
8

Qual è la differenza tra store.load() e model.load()? Uno usa callback, l'altro utilizza success/failure, con firme di funzioni leggermente diverse.ExtJs Store.Load() vs Model.Load()

Oltre a ciò, c'è una differenza principale nell'uso di store.load(), OPPURE non usarlo e chiamare direttamente lo model.load()? Differenza quando si caricano modelli annidati con relazioni?

risposta

4

Se si guarda alla "Utilizzo nei negozi" di Ext.data.Model documentazione troverete questo due frasi:

Uno Store è solo una raccolta di istanze di modello - di solito caricato da un server da qualche parte. Store può anche mantenere una serie di istanze di modello aggiunte, aggiornate e rimosse da sincronizzare con il server tramite il proxy.

e

E 'molto comune a voler caricare un insieme di istanze di modello da visualizzare e manipolare nell'interfaccia utente

Quindi questo significa che negozio è in genere utilizzato come raccolta (o lo chiamerei un repository) di molte istanze di modelli che sincronizza i dati con il backhand definito e mantiene un elenco di istanze di modello che possono essere filtrate, interrogate, ecc.

D'altra parte il metodo Ext.data.Model.load carica solo un dato di istanza dall'id del modello specifico.

In base a ciò, direi che la differenza tra Ext.data.Model.load e Ext.data.Store.load è la quantità di dati che si desidera caricare (una o più istanze di modello).