这是我将数据插入到mongo数据库中的方式:
router.post('/', function (req, res, next) {
var email = req.body.email;
var user = new User({
firsName: 'Juan',
lastName: 'Dela Cruz',
password: 'super-secret',
email: email
});
user.save();
res.redirect('/');
});
这是我的联系方式:
var mongoose = require('mongoose');
var appRoutes = require('./routes/app');
var app = express();
// mongoose.connect('localhost:27017/node-angular');
mongoose.connect('mongodb://localhost:27017/node-angular');
这是我创建模式的方式:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var mongooseUniqueValidator = require('mongoose-unique-validator');
var schema = new Schema({
firstName: {type: String, required: true},
lastName: {type: String, required: true},
password: {type: String, required: true},
email: {type: String, required: true, unique: true},
messages: [{type: Schema.Types.ObjectId, ref: 'Message'}]
});
schema.plugin(mongooseUniqueValidator);
module.exports = mongoose.model('User', schema);
我以具有管理特权的命令提示符在此命令中启动mongodb:
'C:\ WINDOWS \ system32>“ C:\ Program Files \ MongoDB \ Server \ 4.0 \ bin \ mongo.exe“'
然后我尝试使用以下命令访问它:
使用节点角
切换到数据库节点角度
db.users.find()
但是我没有在数据库中得到数据。我什至不知道我是否已成功更新数据库。你能告诉我如何做到这一点吗?谢谢。
答案 0 :(得分:2)
一切都很好。您只需要将集合名称的首字母更改为大写即可。
而不是
db.users.find();
使用
db.Users.find();
希望有帮助...
答案 1 :(得分:1)
save函数有一个回调。尝试使用它,并检查是否可以跟踪某些错误。您可以执行以下操作。
user.save(function (err) {
if (err) return handleError(err);
// saved!
});