【问题标题】:Setting default on Mongoose subschema automatically自动在 Mongoose 子模式上设置默认值
【发布时间】:2014-04-16 04:00:49
【问题描述】:

我正在寻找一种方法让 Mongoose 使用生成的值自动填充字段。我认为以下方法会起作用,但这是不行的。是否可以在保存时自动填充子架构字段? (不寻找中间件代码 - 只是自动的)

// A function to gen an integer
function randomValue () {
   var s = parseInt(crypto.randomBytes(4).toString('hex'), 16);
   return s;
}

// Subschema 
var Variation = new Schema({
  // Set default to gen integer
  code: {
    type: Number,
    default: randomValue
  } 
},{ _id : false });

// Main schema
var Product = new Schema({     
  variations: {
    type: [Variation]
  }
});

【问题讨论】:

    标签: javascript node.js mongodb mongoose


    【解决方案1】:

    您需要调用 randomValue 以返回 s 的值

    【讨论】:

    • 嗯?不,你不会 - 这只会在 Schema 启动时设置一次,并且永远不会给你一个随机值 - 它在主模式上工作正常而不是 sub
    猜你喜欢
    • 2018-07-18
    • 1970-01-01
    • 2023-03-26
    • 2018-07-31
    • 2019-10-06
    • 2017-08-01
    • 2011-03-21
    • 1970-01-01
    • 2020-12-08
    相关资源
    最近更新 更多