2016-07-30 16 views
1

'distinct' Mongoose操作を使用しようとしていますが、正しく動作していません。私は特定のマングースドライバを使用するためにこの特定のバージョンが必要なので、私はMongoose 3.8.31を使用しています。Mongooseで 'distinct'の値が宣言されていません。3.8.31

私が使用しているコードはというエラーで応答します。 'distinct'の値はと宣言されていません。ここで

は私のコードです:

var query = {}; 

Channel.distinct(query, 'name', function (err, channels) { 
    if (err) { 
      res.send(err); 
    } else { 
      res.send(channels); 
    } 
}); 

私は

http://mongoosejs.com/docs/3.8.x/docs/api.html#query_Query-distinct

下のリンクのように、マングース3.8.31の明確な操作形式を以下のよ

答えて

0

distinct signatureをありがとうあなたはMongoose Queryに適用されます。つまり、をチェーンする必要があります問い合わせへ方法は次のとおり

Channel.find().distinct('name', function (err, channels) { 
    if (err) { 
      res.send(err); 
    } else { 
      res.send(channels); 
    } 
}); 

また、ストレートモデルにdistinct方法を適用することができます。

var query = {}; 
Channel.distinct('name', query, function (err, channels) { 
    if (err) { 
      res.send(err); 
    } else { 
      res.send(channels); 
    } 
}); 
+0

は、あなたの答えをいただき、ありがとうございます。私は2つのオプションを試しましたが、このエラーが発生します: "** TypeError:this.collection.distinctは関数ではありません**" – gonver

+0

他のアイデアはありますか? – gonver

+0

'Channel'はモンゴースモデルですか? – chridam

関連する問題