TestController.js:
module.exports = {
test: function(req, res) {
User.findOne({}, function(err, found) {
console.log(found);
return res.send(found);
})
}
};
User
模型包含一个条目。当此控制器运行时,发送的结果为null
或undefined
。
但是,如果将User.findOne({})
替换为User.find({})
,则found
变量突然变为包含单个条目的数组:
[
{
"name": "Walter Jr",
"createdAt": "2014-11-16T09:59:48.232Z",
"updatedAt": "2014-11-16T09:59:48.232Z",
"id": "5468759459f51a307b47bffd"
}
]
为什么?
答案 0 :(得分:4)
我不认为这是通过,但为了每个人的谷歌搜索的利益,这里是什么了:
一旦你深入了解err
,你会发现:
{
"error": "E_UNKNOWN",
"status": 500,
"summary": "Encountered an unexpected error",
"raw": {}
}
换句话说,Waterline的findOne
总是需要某种查询才能找到一个项目;它不会自动在任何列表中找到第一个并返回它,这对于findOne来说不够具体。