【发布时间】:2016-03-01 01:12:05
【问题描述】:
我在我的数据库中填充了一些我试图添加用户的虚拟数据。创建了一个用户对象,但没有保存任何属性...这是怎么回事?
app.get('/setup', function (req, res) {
User.findOne({ name: "Nick" }, function (err, user) {
if (user == undefined) {
var nick = new User({
name: "Nick",
}).save();
res.json({ "success": true, "msg": "user created" });
} else {
res.json({ "success": true, "msg": "user existed" });
}
});
});
调用它会返回“用户创建”。这是我输出所有用户的方法:
app.get('/users', function(req, res) {
User.find({}, function(err, user) {
res.json(user);
});
});
这里的输出是
[
{
"_id": "565772db5f6f2d1c25e999be",
"__v": 0
},
{
"_id": "5657734ba859fefc1dca77db",
"__v": 0
},
{
"_id": "5657738ba859fefc1dca77dc",
"__v": 0
},
{
"_id": "565774f1cf99a2b81fca1e7f",
"__v": 0
},
{
"_id": "565775f0cf99a2b81fca1e80",
"__v": 0
}
]
我曾多次尝试添加“Nick”,但没有...任何输入? :D
我的 Mongoose 模型,与其他模型位于它自己的 Model.js 文件中:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
// set up a mongoose model and pass it using module.exports
module.exports = mongoose.model('User', new Schema({
name: String,
password: String,
}));
【问题讨论】:
-
改保存到
.save(function(err,user){ console.log(err)})看看有没有错误 -
User 对象从何而来?你在用猫鼬吗?
-
没有错误,我正在使用猫鼬是的
-
那么我建议添加相应的标签以获得更好的答案,并且不会让人们误以为您的脚本依赖于纯 mongo。
-
我测试了您的确切设置,一切正常。它能够使用名称字段保存新用户。我会推荐 Lisa 的设置。
标签: javascript node.js mongodb mongoose