此處的示例如何在MongoDB中進行類型檢查?
http://mongoosejs.com/docs/populate.html
提供以下代碼
var story1 = new Story({
title: "A man who cooked Nintendo"
, _creator: aaron._id
});
_creator以上如下
_creator : { type: Schema.ObjectId, ref: 'Person' }
定義。如果我修改代碼以下面
var story1 = new Story({
title: "A man who cooked Nintendo"
, _creator: {name: 'test'}
});
這似乎數據高高興興地插入到MongoDB的。
{ "title" : "A man who cooked Nintendo", "_creator" : { "name" : "test" }, "_id" : ObjectId("4fb7a55315c5f2de07000002"), "fans" : [ ] }
如何在插入前捕獲錯誤?我想檢查它不僅是一個ObjectId,而且它對應於一個有效的Person。
這給出了'TypeError:Object function ObjectId(key,options){SchemaType.call(this,key,options,'ObjectID'); }有沒有方法「isValid'' – Tom
我相信他們已經把它改爲: 'mongoose.Types.ObjectId.isValid()' – herbyme
更新,謝謝@herbyme –