2013-06-06 5 views
1

Ici, les charges de magasin de données (databse Firebug montre), mais toutes les lignes sont vides ... S'il vous plaît help.I ne peux pas trouver la raison derrière ...grille montrant des lignes vides ExtJS

Magasin

autoLoad: true, 
model: 'CustomerService.model.OrderModel', 
idProperty: 'id', 
fields: [{ 
    name: 'id', 
    type: 'int' 
}, { 
    name: 'name', 
    type: 'string' 
}, { 
    name: 'quantity', 
    type: 'int' 
}, { 
    name: 'receivedquantity', 
    type: 'int' 
}], 
proxy: { 
    type: 'ajax', 
    url: 'data/Getall.php', 
    reader: { 
     type: 'json', 
     root: 'data', 
     successProperty: 'success' 
    } 
} 
}); 

est ici Modèle:

Ext.define('CustomerService.model.OrderModel', { 
    extend: 'Ext.data.Model' 
}); 

ici est vue:

Ext.define('CustomerService.view.customer.List', { 
    extend: 'Ext.grid.Panel', 
    alias: 'widget.mylist', 
    selModel: Ext.create('Ext.selection.CheckboxModel', { 
     checkOnly: false 
    }), 
    store: 'OrderStore', 
    forceFit: true, //Fit to container:: columnLines:true, height:132, width:200, autoResizeColumns:true, initComponent:function(){ 

    this.columns = [{ 
     header: 'name', 
     dataIndex: 'name' 
    }, { 
     header: 'Quantity', 
     dataIndex: 'quantity', 
    }, { 
     header: 'Received Quantity', 
     dataIndex: 'receivedquantity' 
    }]; 
    this.callParent(arguments); 
} 
}); 

Répondre

1

si vous utilisez un model dans votre store vous devez définir l'fields dans votre model au lieu de les définir dans votre store.

Ext.define('CustomerService.model.OrderModel', { 
    extend: 'Ext.data.Model', 
    fields: [{ 
     name: 'id', 
     type: 'int' 
    }, { 
     name: 'name', 
     type: 'string' 
    }, { 
     name: 'quantity', 
     type: 'int' 
    }, { 
     name: 'receivedquantity', 
     type: 'int' 
    }], 
}); 

Ext.data.Store fileds:

Cela peut être utilisé à la place de spécifier une configuration de modèle. Les champs doivent être un ensemble d'objets de configuration Ext.data.Field. Le magasin crée automatiquement un Ext.data.Model avec ces champs. En cette option de configuration ne doit être utilisée que pour les magasins simples comme un magasin à deux champs de ComboBox. Pour quelque chose de plus compliqué, comme spécifier une propriété id particulière ou des associations , un Ext.data.Model doit être défini et spécifié pour la configuration du modèle .

+0

ohh merci, je pensais. Il regarde d'abord dans le magasin puis dans le modèle. Quelqu'un m'a dit de "créer tout dans le magasin, ne pas utiliser le modèle" –

+0

Vous avez accepté car il a résolu votre problème? Est-ce que le code fonctionne pour vous maintenant? Parce qu'il me semble qu'il y a d'autres problèmes avec votre code. –

+0

non, son fonctionnement bien, mais pourriez-vous me dire les autres problèmes? –