コレクションのすべての一意の都市を取得できるようにしたいという問題があり、私のコードは次のようになります。
var mongoose = require("mongoose"),
Schema = mongoose.Schema;
var PersonSchema = new Schema({
name: String,
born_in_city: String
});
var Person = mongoose.model('Person', PersonSchema);
ネイティブの MongoDb では を実行できましたがdb.person.distinct("born_in_city")
、Mongoose に相当するものはないようです。これを行うために自分ですべてのドキュメントを反復処理する唯一のオプションですか、それともより良い解決策がありますか?
node-mongodb-native
回答者が示唆するように基礎を使用しようとして、私はこれを試みました:
mongoose.connection.db.collections(function(err, collections){
collections[0].distinct('born_in_city', function( err, results ){
console.log( err, results );
});
});
ただし、results
空であり、エラーはありません。collections
また、可能であれば、返されるものをフィルタリングするよりも、必要なコレクションのみを名前で取得できるようにしたいと考えています。