【发布时间】:2016-05-15 17:01:32
【问题描述】:
我是 MEAN 的新手,我有 两个收藏用户和仪表板。 我有 相关 仪表板与用户
蒙古壳
db.users.find() -> { "_id" : ObjectId("573765e5889380a83581f421"), "firstName" : "zx", "lastName" : "zx", "username" : "zx" }
db.dashboard.find() -> { "_id" : ObjectId("573766af2affdfa8aaef44d4"), "sentenceId" : 40, "synced" : 1, "iscorrect" : "no", "user_id" : ObjectId( “573765e5889380a83581f421”)}
我们可以观察到用户与仪表板相关
db.dashboard.findOne({"user_id" : ObjectId("573765e5889380a83581f421")})
得到的结果是
{ "_id" : ObjectId("573766af2affdfa8aaef44d4"), "sentenceId" : 40, “同步”:1,“不正确”:“否”,“user_id”: ObjectId("573765e5889380a83581f421") }
问题从这里开始
我尝试在express js中做如下
function getById(_id) {
var deferred = Q.defer();
db.dashboard.findOne({user_id : _id}, function (err, user) {
console.log(user)
if (err) deferred.reject(err);
if (user) {
// return user (without hashed password)
deferred.resolve(_.omit(user, 'hash'));
} else {
// user not found
deferred.resolve();
}
});
return deferred.promise;
}
错误消息TypeError: Cannot read property 'findOne' of undefined
我正在使用 mongoskin,但我不确定如何实施 db.dashboard.findOne in express
也可以建议任何更好的方法,感谢任何帮助
提前致谢
【问题讨论】:
标签: mongodb express mean-stack