2013-01-25 11 views

cevap

9
Collection.find({}).distinct('myField', true); 

, [proje] /client/lib/a.js aşağıdaki koymak:

LocalCollection.Cursor.prototype.distinct = function (key,random) { 
    var self = this; 

    if (self.db_objects === null) 
    self.db_objects = self._getRawObjects(true); 
    if (random) 
    self.db_objects = _.shuffle(self.db_objects); 
    if (self.reactive) 
    self._markAsReactive({ordered: true, 
          added: true, 
          removed: true, 
          changed: true, 
          moved: true}); 
    var res = {}; 
    _.each(self.db_objects,function(value){ 

    if(!res[value[key]]){ 
     res[value[key]] = value; 
    } 
    }); 
    return _.values(res); 
}; 
+0

Teşekkür! Bunu deneyeceğim. – TimDog

+0

bunu kullanarak, belirli işlemleri yalnızca reaktif hale getirmek için özel bir 'find()' yapabilir miyim? Yani onun tek reaktif ekledi ve kaldırıldı? – Akshat

+0

evet. self._markAsReactive() öğesi false: sipariş edildi, değiştirildi, taşındı. – ram1

İlgili konular