2016-09-30 3 views
0

私たちは、顧客が注文とhasMany関係を持つループバックのデータモデルを持っています。顧客をクエリすると、注文は特定の顧客の配列になります。ループバックAND条件で特定の注文名を持つすべての顧客を取得するためにクエリに使用する必要があるオプションは何ですか?ループバックリレーショナルモデルクエリ

ご協力いただきありがとうございます。

答えて

0

は、私はあなたを思う:あなたは、このリンクでより多くの情報を見つけることが

Post.find({where: {and: [{title: 'My Post'}, {content: 'Hello'}]}}, 
      function (err, posts) { 
      ... 
}); 

:あなたはAND/OR条件を使用したい場合は

は、ここでの例であります[含める]機能: http://loopback.io/doc/en/lb2/Include-filter.html

問題ここでは、外部キーはサポートされていません。モデル自体に複合(複数フィールド)主キーを定義できますが、複合キー{field1、field2、...]、カスタム回避策に基づいてリレーションを定義することはできません。

0

クエリは可能ですが、SQLのように左結合に似ています。

customers array with orders as array 
ex: [ 
    { 
     name: customer A, 
     orders: [{...},{...}] 
    }, 
    { 
     name: customer B, 
     orders: [] //That does not match condition in scope 
    } 
    ] 

MOREINFO:中

Customer.find({ 
    where:{}, 
    include: { 
    relation: 'orders', 
    scope: { 
     where: { 
      name: 'order name' 
     } 
    } 
    } 
}, (err, callback)) 

結果:以下のクエリによって

Loopback doc reference

しかし、あなたは正確にしたいならば、ネイティブのmongoクエリを使用します。

CustomerCollection = Customer.getDataSource().connector.collection("Customer"); 

と火災集計(ネイティブモンゴクエリー)