2015-12-18 7 views
0

Можете ли вы сказать мне, что я делаю неправильно?Restangular - getList в ответе

var api = Restangular.all('person'); 
api.getList().then(function(data) { 
    angular.forEach(data, function(val,key) { 
     val.getList('role').then(function(res) { 
      //... 
     }); 
});}); 

Я хочу позвонить /человек /: идентификатор/роль, но теперь называют /человек/роль ...

Спасибо за любые советы

ответ

0

Спасибо @min che, теперь работает хорошо.

Решение: angular.run()

Restangular.configuration.getIdFromElem = function(elem) { 
     // if route is person ==> returns idPerson 
     return elem["id"+elem.route.charAt(0).toUpperCase() + elem.route.slice(1)]; 
    } 

код на restangular странице ->here ... которые используют RestangularProvider в angular.config() не работает для меня

1

, если вы хотите получить человек по его идентификатору, вы должны использовать Restangular.one ('person', person.id), который создаст/person /: id/

+0

Да Я знаю, но я хочу получить всех людей и для каждого человека получить также его роли. на страницах Restangular является примером ... 'var firstAccount = accounts [0]; // Это будет запрос/учетные записи/123/здания, рассматривающие 123, являются идентификатором firstAccount $ scope.buildings = firstAccount.getList («здания»); ' поэтому я кроме чего-то подобного ... –

+0

вы можете разместить первый элемент данных? Я только что пробовал свой код, и он работает с моими данными, так что, похоже, проблема. –

+0

Нет, я должен создать новый объект .one() ... Итак, где может быть проблема, что-то в конфиге? –