Accéder aux données retournées par $resource
Bonjour,
Lorsque je sélectionne un locataire, je récupère son id, je lance une requête et je récupère l'objet locataire dans lequel il y a notamment l'id_proprietaire
Voici le code du contrôleur :
Code:
1 2 3 4 5 6 7 8 9 10
| angular.module('appLocations').controller('locataireCtrl', ['$scope', '$routeParams', 'LocationsRest', '$location', function ($scope, $routeParams,LocationsRest, $location) {
var loc = LocationsRest.getLocataire().get({id: $scope.id});
$scope.locataire = loc; // pour la vue
loc.$promise.then(function(data){
$scope.LocData=data; // pour pouvoir manipuler les données retournées
console.log(data); // pour voir si tout est OK
});
var idProp = locData.id_proprietaire;
$scope.selectedOption= LocationsRest.getProprietaire().get({id: idProp});;
}]); |
Ce code ne fonctionne pas car il n'y a rien dans idProp et je ne comprends pas pourquoi !
Précisions :
1 - le getLocataire() fonctionne parfaitement, pour preuve $scope.locataire il est parfaitement visible dans la vue !
2 - lorsque je fais du débogage loc est présenté comme : Loc = (Resource)Resource, idem pour $scope.locataire
Fondamentalement je ne vois pas la différence entre mon code et celui qui est proposé dans la doc AngularJS à cette adresse :
https://docs.angularjs.org/api/ngResource/service/$resource en bas de la page.
Merci d'avance pour votre aide,
P.S. : Marco46, je sais que mon code n'est pas vraiment correct, mais pour le moment je suis en phase d'apprentissage et donc je ne peux pas me permettre une trop grand complexité ;-)