【问题标题】:Server validation with mongoose schema使用猫鼬模式进行服务器验证
【发布时间】:2014-10-08 01:36:44
【问题描述】:

假设您在 mongoose 中有此架构设置:

var personSchema = new Schema({
  name: String,
  address:{
    city: String,
    postalCode: Number
  }

});

你有这个帖子:

// /api/person

exports.newPerson = function(req, res){
var person = JSON.parse(person);
//Validation code here
mognoose.model('person').create(person

res.send(200)

}

检查帖子中是否提供了所有密钥的最佳方法是什么?如果缺少任何内容,我希望收到 400 错误消息,例如:“提供的数据不足,请检查文档..”或类似的内容。

你可以这样做:

if(!person.name || !person.address ..){

  res.send(404, {message: 'Not sufficient data'})
  return;
}

但这是最好的方法吗?如果您有一个包含 30 个键的模式怎么办?有没有更好的方法?

【问题讨论】:

    标签: node.js rest mongoose


    【解决方案1】:

    你可以试试这个:

    var personModel = new mongoose.model('person');
    personModel.set(person); // just set temp person object
    personModel.save(function (err, saved) {
        if (err) {
            // your 400 error
            return;
        }
        // saved = person with mongoDb fields seted (_id, __v, ...)
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-06-20
      • 2021-12-18
      • 2013-01-18
      • 2016-09-23
      • 1970-01-01
      • 2011-11-14
      • 1970-01-01
      • 2014-01-16
      相关资源
      最近更新 更多