这两天用mongodb数据库,遇到了个问题,取出的数据和存储时的顺序不一样。
存储的顺序:
取出后展示效果:
怎么按着传入的顺序输出呢?
查资料得出数据库的_id存入时是计算有时间的,这就好办啦,加上
time: -1
})
就ok了,详细
module.exports = Person;
function Person(name){
this.name = name
}
Person.get = function(name, callback) {
mongodb.open(function (err, db) {
if (err) {
return callback(err);
}
db.collection(‘people_list’, function (err, collection) {
if (err) {
mongodb.close();
return callback(err);
}
var query = {};
if (name) {
query.name = name;
}
collection.find(query).sort({
time: -1
}).toArray(function (err, docs) {
mongodb.close();
if (err) {
return callback(err);
}
callback(null, docs);
});
});
})
}
最后输出结果: