0

我正在尝试编写一个猫鼬模式,该模式对于所有对 find() 或 findOne() 的调用都将在其一个字段中传递某个值。我尝试在字段声明中使用“默认”属性,但这对我不起作用。

这是我的架构:

var schema = Schema({
  created_at: Date,
  type: {type: String, default: "alert"},
  timestamp: Number,
  order: Number,
  description: String,
  status: String,

});

我希望每次调用 find() 和 findOne() 在“type”字段中传递值“alert”。

有任何想法吗?

4

1 回答 1

1

您可以向模型添加一个简单的包装器方法,该方法将负责查找每个带有type: "alert". 像这样的东西:

var Model = mongoose.model('Model', theSchema);
Model.alerts = function (q, callback) {
  q.type = "alert";
  this.find(q, callback);
}

然后你可以得到你想要的Model.alerts({}, callback)

于 2013-09-20T18:09:42.087 回答