Du kan fortfarande använda populate()
med _id
värden av typer förutom ObjectID, men du måste använda samma typ i referensdefinitionen.
Så ditt trackPassSchema
skulle behöva ändras till:
var trackPassSchema = new Schema({
_id: { type: String, default: function genUUID() {
return uuid.v1()
}},
vehicle: [
{type: String, required: true, ref: 'Vehicle'}
]
});
Som Adam noterar i kommentarerna kan du förenkla din default
värde till:
var trackPassSchema = new Schema({
_id: { type: String, default: uuid.v1 },
vehicle: [
{type: String, required: true, ref: 'Vehicle'}
]
});