如何在Mongoose中的静态方法中访问实例模型?

时间:2013-06-10 17:31:25

标签: node.js coffeescript mongoose

我正在尝试在mongoose模型中创建一个findOrCreate方法。

UserSchema.statics.findOrCreate = (newUserData, next) ->
  @findOne { id: newUserData.id }, (err, user) ->
    return next err  if err
    if not user
      self = mongoose.model 'user'
      user = new self newUserData
      user.save (err) ->
        return err if err
    next null, user

我的主要问题是: 我是否正确地在静态方法中实例化用户模型的新实例?

self = mongoose.model 'user'
user = new self newUserData

我没有看到任何错误,它没有任何问题。但是没有新文档插入数据库。

1 个答案:

答案 0 :(得分:0)

您是否在架构上设置了“安全”选项?

见这里:http://mongoosejs.com/docs/guide.html#safe