ben bir koleksiyon için tüm benzersiz şehirler elde edebilmek istiyorum bir sorun var ve benim kod şöyle görünür:Mongoose'daki farklı değerler için nasıl sorgu yaparım?
var mongoose = require("mongoose"),
Schema = mongoose.Schema;
var PersonSchema = new Schema({
name: String,
born_in_city: String
});
var Person = mongoose.model('Person', PersonSchema);
Sadece db.person.distinct("born_in_city")
yapabileceği yerli mongodb olarak, ama orada gelmez' Mongoose için eşdeğer bir şey gibi görünüyor. Bunu yapmak için tüm belgelerin üzerinde kendimi yineleme seçeneği var mı, yoksa daha iyi bir çözüm var mı? yanıtlayanın tarafından önerildiği gibi altta yatan node-mongodb-native
kullanmak için bir girişimde
mongoose.connection.db.collections(function(err, collections){
collections[0].distinct('born_in_city', function(err, results){
console.log(err, results);
});
});
results
boştur ve herhangi bir hata olmasa Ancak. Aynı zamanda, sadece gerekli olan koleksiyonu, mümkün olan her durumda collections
nolu iadeyi filtrelemekten ziyade isimle almayı tercih ederim.
Ayrıca doğrudan [Model] 'de de arayabilirsiniz (http://mongoosejs.com/docs/api.html#model_Model-distinct). 'MyModel.distinct ('_ id', {foo: 'bar'}, işlev (hata, ids) ...' – JohnnyHK
Başar, teşekkürler! – diosney
Sonra ids tarafından sonucu sipariş verebilirim? – Melki