我有一个看起来像的集合,
[
{"_id":"543a631d525dc7684bb730e3","word":"sda","description":"dsa"},
{"_id":"543a634e525dc7684bb730e4","word":"dsa","description":"dasda"},
{"_id":"543a6886525dc7684bb730e5","word":"sadas","description":"asaaa"}
]
我无法按字母顺序对列表进行排序, 我现在尝试的是 -
router.get('/userlist', function(req, res) {
var db = req.db;
db.collection('userlist').find().sort({ word: 1 })
db.collection('userlist').find().toArray(function (err, items) {
res.json(items);
});
});
有没有人知道如何按字母对此列表进行排序?
答案 0 :(得分:1)
这不是它的工作方式,如果您有任何编程背景,那么您应该知道第一个db...find()
将返回您想要的data (cursor)
,但您不会将该数据存储在任何变量,在您的第二个db....find()
中,您没有应用sort
。
所以,我知道你自己找到了答案,但你仍然可以使用这样的东西,
router.get('/userlist', function(req, res) {
db.collection('userlist').find().sort({ word: 1 }).toArray(function (err, items) {
res.json(items);
});
});
答案 1 :(得分:0)
如果您使用的是猫鼬,可以按如下方式排序:
router.route('/userlist')
// CREATE ROUTE FOR USERLIST
// =========================
.get(function(req, res) {
// SEND THE USERLIST AFTER SORTING THEM OUT IN ALPHABETICAL ORDER
Snippets.find().sort({time: -1}).exec(function(err, items) {
res.json(items);
})
})