我正在尝试创建一个CreatedBy Mongoose插件,但在尝试使用ObjectId
作为字段类型时,它("account"
已经是另一个已定义的集合):
TypeError: Invalid value for schema path `CreatedBy.type`
&安培;这是插件代码:
mongoose = require 'mongoose'
module.exports = exports = updatedByPlugin = (schema, options) ->
schema.add CreatedBy:
type: mongoose.Schema.Types.ObjectId
ref: "account"
schema.pre "save", (next) ->
@CreatedBy = options.accountId
next()
return
schema.path("CreatedBy").index options.index if options and options.index
return
那么我如何修改ref
值才能使其正常工作?
答案 0 :(得分:2)
好吧,你不会相信它,但我通过这样添加CreatedBy
字段来解决它
schema.add CreatedBy:
ref: "account"
type: mongoose.Schema.Types.ObjectId
是的,只需交换ref
&的2行。 type
!! 。交换这两行可能会破坏代码是很奇怪的:| !!!