2016-06-17 2 views
0

У меня есть модель клиента с hasMany отношением к модели прибора с помощью модели InstrumentTracking (это отношение «через»). Как я могу получить все инструменты конкретного Клиента из кода контроллера?loopback - связанная с запросом модель

Я попытался использовать client.instruments, который дал мне «undefined», я попытался найти с помощью «инструмента» или «инструмента» или «InstrumentTracking» или «instrumentTracking», ничего не работает, любая помощь будет высоко оценена ,

+0

Вы можете поделиться своим кодом для получения документов? –

ответ

0

Хорошо, так что кажется, что include должно содержать имя самого отношения (в json-файле «Client» в отношениях, которые я видел, что отношение к множеству отношений называется «инструментом»), слишком плохой провал указать его в своей документации.

в конце концов, это сработало:

InstrumentTracking.find({ filter: { where: {userID:$rootScope.currentUser.id}, include:['instrument'] }}) 
     .$promise 
     .then(function(foundInst) { 
       var instrument = foundInst[0].instrument; 
       console.log("foundInst="+JSON.stringify(instrument)); 
       $scope.instrumentTracking = instrument; 
      } 
     ); 

, но это не работало (возвращаемый массив пустой инструмент):

 Client 
     .find({ filter: { where: {id: $rootScope.currentUser.id}}}) 
     .$promise 
     .then(function(foundUsers) { 
      console.log("foundUsers="+JSON.stringify(foundUsers)); 
      console.log("found == " +JSON.stringify(foundUsers[0])); 
      console.log(" foundUser.instruments = " + foundUsers[0].instruments.find({}).$promise 
        .then(function(foundInst) { 
         console.log("foundInst == " +JSON.stringify(foundInst)); 
        })); 
     }); 

По какой-то причине, когда я пытаюсь получить документы от модели клиент всегда возвращает пустой массив, даже если я использую API Explorer.

Смежные вопросы