Je voudrais avoir une grille de dojo qui se connecte à un serveur url qui sort le json suivant: {identificateur: "id" articles: [{id: "1", nom: "John ", université: {nom:" XXX ", adresse:" YYY "}}].Dojo grid imbriqué json
Fondamentalement, j'ai un json imbriqué. J'aimerais représenter le nom de l'université et l'adresse de l'université en tant que colonnes distinctes dans la grille.
J'ai essayé d'utiliser l'objet dojox.grid.DataGrid et de créer une mise en page gird, mais je ne sais pas comment faire référence aux éléments imbriqués et university.name et university.address ne semblent pas fonctionner. J'utilise dojo 1.6.1.
Est-ce que quelqu'un a des pointeurs?
Ceci est le code js J'utilise:
dojo.require("dojox.grid.DataGrid");
dojo.require("dojo.data.ItemFileReadStore");
dojo.addOnLoad(function(){
// our test data store for this example:
var jsonStore = new dojo.data.ItemFileReadStore({
url: '/MainDeployer/ajax/users/get.json'
});
var layoutUsers = [
[{
field: "name",
name: "Name",
width: 10
},
{
field: "university.name",
name: "University Name",
width: 10
},
{
field: "university.address",
name: "University Address",
width: 'auto'
}]];
// create a new grid:
var grid = new dojox.grid.DataGrid({
query: {},
store: jsonStore,
clientSort: true,
rowSelector: '20px',
structure: layoutUsers
},
document.createElement('div'));
dojo.byId("usersTable").appendChild(grid.domNode);
grid.startup();
});
Merci, Cristian
je lis cette partie dans le doc et j'ai essayé d'utiliser un ItemFileReadStore avec la structure JSON donnée de mon premier post et je doesn ne fonctionne pas (donne un "Désolé, erreur rencontrée" dans la grille). Mon problème principal, je pense est que dans le gridlayout je suis censé donner une valeur de champ, pour mapper les elemets imbriqués, ce que je fais sous la forme de "university.name", mais je ne pense pas que ce soit le moyen de cartographier eux –
cela devrait fonctionner en effet. Pouvez-vous isoler cette partie de votre code et l'afficher? – perissf
l'a ajouté dans le post d'ouverture. –