Bạn vẫn có thể sử dụng populate()
với _id
giá trị của các kiểu ngoài ObjectID, nhưng bạn cần sử dụng cùng một kiểu trong định nghĩa tham chiếu.
Vì vậy, trackPassSchema
của bạn sẽ cần phải thay đổi thành:
var trackPassSchema = new Schema({
_id: { type: String, default: function genUUID() {
return uuid.v1()
}},
vehicle: [
{type: String, required: true, ref: 'Vehicle'}
]
});
Như Adam lưu ý trong các nhận xét, bạn có thể đơn giản hóa default
của mình giá trị thành:
var trackPassSchema = new Schema({
_id: { type: String, default: uuid.v1 },
vehicle: [
{type: String, required: true, ref: 'Vehicle'}
]
});