loopback - 查询相关模型

时间:2016-06-17 16:10:25

标签: loopbackjs angular-loopback

我有一个客户端模型,通过InstrumentTracking模型与仪器模型有很多关系(即“通过”关系)。 如何从控制器代码中获取特定客户端的所有仪器?

我尝试使用client.instruments,它给了我“undefined”,我尝试使用包含'乐器'或'乐器'或'InstrumentTracking'或'instrumentTracking'的查找,没有任何工作,任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

好吧所以似乎include应该包含关系本身的名称(在&#34的json文件中;客户"在关系中我看到有很多与insturments关系被称为"仪器& #34;),太糟糕的windloop未能在他们的文档中指定它。

最终这起作用了:

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,它也总是返回空数组。