请看一下下面的代码,有什么问题?

处理注册的路由

app.post('/reg', function (req, res, next) {
    var user = new Blog(req.body.user).save(function (err) {
        if (err) return next(err);
        res.redirect('/login/' + user.email);
    });
});

mongooseschemas的代码

var mongoose = require('mongoose');
var BlogSchema = new mongoose.Schema({
    username: String,
    emailaddress: String,
    password: String
});

module.exports = BlogSchema;

创建module

var mongoose = require('mongoose');
var BlogSchema = require('../schemas/blog');
var Blog = mongoose.model('Blog', BlogSchema);


module.exports = Blog;

图片描述

error信息

阅读 2.4k
1 个回答

与代码无关,看你的报错信息,应该是mongodb中的blog表里面设置了一个不可重复的emailadress索引,你注册时用了与表中相同的email就会报这个错.
两种修改建议:
1.将这个索引改为可重复.
2.在save入库中先比对email是否存在.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题