2016-06-17 9 views
0

私は、InstrumentTrackingモデル(これは「スルー」関係)を介して、InstrumentモデルとhasMany関係のあるクライアントモデルを持っています。 特定のクライアントのすべての計測器をコントローラコードから取得するにはどうすればよいですか?ループバック - クエリ関連のモデル

私は "undefined"を与えたclient.instrumentsを使用してみましたが、インクルード 'instrument'または 'instrument'または 'instrumentTracking'や 'instrumentTracking'を含む検索を試しましたが、何も何の助けもありません。

+0

楽器をフェッチするためのコードを共有できますか? –

答えて

0

これで、インクルードにはリレーション自体の名前が含まれているように見えます(リレーションシップの「クライアント」のjsonファイルで、インストルメント関係の多くが「インストゥルメント」と呼ばれることがわかりました)ドキュメントで指定します。

は、最終的にはこれが働いた:

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; 
      } 
     ); 

が、このdidntの仕事(返された空の計器の配列):私はそれは常に空を返すクライアントモデルから楽器を取得しようとするいくつかの理由

 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を使用していても

関連する問題