0
我收到錯誤:未定義功能錯誤()與本地託管的數據庫
「類型錯誤:未定義是不是一個函數」 ..for指定者()在下面的代碼。
// Require mongo db user model
var User = require("./models/user.js");
.
.
.
// list of members page ====================================================
// protected page
app.get("/members", isLoggedIn, function(req, res) {
// get array list of usernames
var pttCursor = User.find({ } , { firstname: 1, lastname: 1, _id: 0 });
var membersArray = pttCursor.toArray(function(err, docs){});
res.render("members.ejs", {
user : req.user, // get user out of session and pass to template
members : membersArray
});
});
我希望/ members頁面可以訪問一組用戶名。
編輯:我也曾嘗試 「cursor.map()」 ..我得到同樣的錯誤從模型
// get array list of usernames
var pttCursor = User.find({ } , { firstname: 1, lastname: 1, _id: 0 });
var membersArray = pttCursor.map(function(pttDoc){
return pttDoc.firstname + pttDoc.lastname;
});
Mongoose不支持這兩種方法。這些只存在於MongoDB shell中。 ''.toArray()'存在於本地驅動程序中。但貓鼬沒有這些。默認情況下,「mongoose」已經以數組形式返回結果,除非您明確要求使用遊標或流。 –
@blakes,我會像這樣設置它:'var membersArray = User.find({},{firstname:1,lastname:1,_id:0});'? – Fabian
我想建議閱讀[documentation](http://mongoosejs.com/docs/api.html#model_Model.find) –