Vous pouvez toujours utiliser populate()
avec _id
des valeurs de types autres que ObjectID, mais vous devez utiliser le même type dans la définition de référence.
Donc, votre trackPassSchema
devrait être remplacé par :
var trackPassSchema = new Schema({
_id: { type: String, default: function genUUID() {
return uuid.v1()
}},
vehicle: [
{type: String, required: true, ref: 'Vehicle'}
]
});
Comme Adam le note dans les commentaires, vous pourriez simplifier votre default
valeur à :
var trackPassSchema = new Schema({
_id: { type: String, default: uuid.v1 },
vehicle: [
{type: String, required: true, ref: 'Vehicle'}
]
});