Node.js 如何避免使用mongoose在mongodb中插入空记录

Node.js 如何避免使用mongoose在mongodb中插入空记录,node.js,mongodb,mongoose,mongodb-query,Node.js,Mongodb,Mongoose,Mongodb Query,在我的脚本中,我可以在mongodb中创建一个新集合,但默认情况下会插入一条空记录,因此如何避免这种情况 model.js: /* model.js */ 'use strict'; var mongoose = require('mongoose'), Schema = mongoose.Schema; function dynamicModel(suffix) { var addressSchema = new Schema({ product_name: {

在我的脚本中,我可以在mongodb中创建一个新集合,但默认情况下会插入一条空记录,因此如何避免这种情况

model.js:

 /* model.js */
 'use strict';

 var mongoose = require('mongoose'),
 Schema = mongoose.Schema;


 function dynamicModel(suffix) {
   var addressSchema = new Schema({

    product_name: {
        type: String
    }

   }); 
   return mongoose.model(suffix, addressSchema); 
  } 
  module.exports = dynamicModel;
data.controller.js:

      var NewModel = require(path.resolve('./models/model.js'))(collectionName);
      NewModel.create({ category: 1, title: 'Minion' }, function(err, doc) {

      });
创建新系列后,我看到如下情况:

  _id:ObjectId("5eceb362d538901accc0fefe");
  __v:0

必须在模型中定义这些属性

 /* model.js */
 'use strict';

 var mongoose = require('mongoose'),
 Schema = mongoose.Schema;


 function dynamicModel(suffix) {
   var addressSchema = new Schema({

    product_name: {
        type: String,
    },
    category: {
       type: Number,
    },
    title: {
       type: String,
    }

   }); 
   return mongoose.model(suffix, addressSchema); 
  } 
  module.exports = dynamicModel;

“类别和标题属性在您的架构中不可用,这就是为什么它要创建一个只有_id和u v的集合。@毗瑟奴:那么我可以删除类别和标题吗?在架构中,默认情况下启用了“严格”选项。”。如果需要添加架构中未指定的额外字段,可以将strict选项设置为false。多谢各位