Bonjour à tous,

Je bosse sur une petite appli web dans laquelle j'utilise (très modestement ...) AngularJS.

Sur ma page index, je liste mes utilisateurs et leurs styles musicaux favoris.
Exemple de comment mes données sont récupérées dans mon json :

  {
    "id":2,
    "username":"toto",
    "styles":
        [{
            "id":1,
            "name":"Blues",
            "_joinData":
                {
                "style_id":1,
                "id":151,
                "user_id":2
                }
        },
        {
            "id":3,
            "name":"Rock",
            "_joinData":
                {
                "style_id":3,
                "id":153,
                "user_id":2
                }
        }]
  }

Le problème est que je n'arrive pas à afficher les données associées, en l'occurence les styles de mes utilisateurs.

Pour l'instant, je fais comme ça :

<div ng-app>
  <div ng-init="monjson">
        <!-- je récupère bien le username-->
        <div ng-repeat="user in users ">
            <h3> {{user.username}}</h3>

             <!-- je ne peux pas récupérer les styles -->
            <span ng-repeat="style in styles"> {{style.name}} </span>
      </div> 
  </div>

Quelqu'un a une idée de ce qui débloque et de comment je pourrais faire pour récupérer ces données ?

2 réponses


workfel
Réponse acceptée

Salut,
C'est normal que styles n'existe pas tu n'as pas d'objets styles dans ton controller.
Il te faut utiliser user.styles.

 <!-- je récupère bien le username-->
        <div ng-repeat="user in users ">
            <h3> {{user.username}}</h3>

             <!-- je ne peux pas récupérer les styles -->
            <span ng-repeat="style in user.styles"> {{style.name}} </span>
      </div>

Bonjour Kalagan,

Effectivement, maintenant que je le lis ça me parait évident !
Merci beaucoup :D