Ví dụ dưới đâyTôi làm cách nào để kiểm tra kiểu trong MongoDB?
http://mongoosejs.com/docs/populate.html
Cung cấp đoạn mã sau
var story1 = new Story({
title: "A man who cooked Nintendo"
, _creator: aaron._id
});
_creator được định nghĩa trên như sau
_creator : { type: Schema.ObjectId, ref: 'Person' }
Nếu tôi thay đổi mã để sau
var story1 = new Story({
title: "A man who cooked Nintendo"
, _creator: {name: 'test'}
});
Dường như vui vẻ chèn dữ liệu vào MongoDB.
{ "title" : "A man who cooked Nintendo", "_creator" : { "name" : "test" }, "_id" : ObjectId("4fb7a55315c5f2de07000002"), "fans" : [ ] }
Làm cách nào để nhận lỗi trước khi chèn? Tôi muốn kiểm tra xem nó không chỉ là một ObjectId mà còn là nó tương ứng với một Person hợp lệ.
điều này cung cấp 'TypeError: Object function ObjectId (khóa, tùy chọn) {SchemaType.call (this, key, options, 'ObjectID'); } không có phương pháp 'isValid'' – Tom
Tôi tin rằng họ đã thay đổi nó để: ' mongoose.Types.ObjectId.isValid() ' – herbyme
cập nhật, nhờ @herbyme –