I have the following schema:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
mongoose.Promise = global.Promise;
var userSkillSchema = Schema ({
email:{type:String, required:true, ref:'User'},
skill:{type:String, required:true},
sub1:{type:String, required:true},
sub2:{type:String, required:true},
experience:{type:Number, required:true}
});
var UserSkill = mongoose.model('UserSkill',userSkillSchema);
module.exports = UserSkill;
When I am doing a simple UserSkill.find
as follow:
router.get('/getskill/:email', function(req, res){
UserSkill.find({email:req.params.email})
.populate('email')
.exec(function(err, userskill){
if (err) return res.send(err);
else{
res.json({userskill});
}
});
});
I am getting the following error:
{
"message": "Cast to ObjectId failed for value \"john@gmail.com\" at path \"_id\" for model \"UserSkill\"",
"name": "CastError",
"stringValue": "\"JohnDoe@gmail.com\"",
"kind": "ObjectId",
"value": "JohnDoe@gmail.com",
"path":
In the documentation it is written that I can use String, Number, ObjectId, Buffer as Ref. Which I did. But still I am getting errors.
via user3450754
No comments:
Post a Comment