次のスキーマを見てください。
var userSchema = new mongoose.Schema({
fullName: {
type: String,
required: true,
index: true
},
activationId: {
type: mongoose.Schema.ObjectId
}
});
userSchema.path('activationId').default(function() {
return new mongoose.Schema.ObjectId.fromString('actvt');
});
これは「activationId」に関するものです。ユーザーが作成されたら、ID(一意のコード、objectIDがすでに組み込まれているため優先されます)を生成したいので、次のコードがある場合:
var newUser = new User({
fullName: 'Rick Richards'
});
newUser.save(function(error, data){
console.log(data.activationId); // Should give the activationId
});
しかし、この解決策では次のエラーが発生します。
TypeError: undefined is not a function