toArray
funkcja istnieje w Cursor
klasa ze sterownika Native MongoDB NodeJS (odniesienie). find
metoda w MongooseJS zwraca Query
obiekt (odniesienie). Istnieje kilka sposobów wyszukiwania i zwracania wyników.
Ponieważ w sterowniku NodeJS dla MongoDB nie ma wywołań synchronicznych, we wszystkich przypadkach należy użyć wzorca asynchronicznego. Przykłady dla MongoDB, które często występują w JavaScript przy użyciu konsoli MongoDB, sugerują, że natywny sterownik również obsługuje podobną funkcjonalność, której nie obsługuje.
var userBlogs = function(username, callback) {
Blog.find().where("author", username).
exec(function(err, blogs) {
// docs contains an array of MongooseJS Documents
// so you can return that...
// reverse does an in-place modification, so there's no reason
// to assign to something else ...
blogs.reverse();
callback(err, blogs);
});
};
Następnie, aby to nazwać:
userBlogs(req.user.username, function(err, blogs) {
if (err) {
/* panic! there was an error fetching the list of blogs */
return;
}
// do something with the blogs here ...
res.redirect('/');
});
Możesz także dokonać sortowania według pola (na przykład daty wpisu na blogu):
Blog.find().where("author", username).
sort("-postDate").exec(/* your callback function */);
Powyższy kod sortowałby w porządku malejącym na podstawie pola o nazwie postDate
(alternatywna składnia:sort({ postDate: -1})
.