Я хочу добавить значение в поддоку в mongoDB с помощью узла js. Схема является:Запрос SuDocuments в MongoDB с использованием Nodejs
var commentSchema = new Schema({
author:String,
data:String,
postedAt:Date
});
var likeSchema = new Schema({
likedBy:{
type:Array,
default:[""]
},
numOfLikes:{
type:Number,
default:0
}
});
var picSchema = new Schema({
url:String,
likes:[likeSchema],
comments:[commentSchema]
});
var statusSchema = new Schema({
data:String,
likes:[likeSchema],
comments:[commentSchema]
});
var profileSchema = new Schema({
username:String,
password:String,
DOB :Date,
sex: String,
Address:String,
pic:[picSchema],
Status:[statusSchema]
});
Я хочу, чтобы один пользователь, чтобы добавить комментарий к картинке другого пользователя. Метод, который я использую прямо сейчас:
profile.update({"username":recepient,"pic._id":id},{$set:{"pic.comments":{"author":user,"data":comment,"postedAt":new Date()}}}},function(err,data){
if (err){
throw err;
}else{
console.log(data);
res.status(200).json({status:"Added successfully"});
}
Здесь я получаю сообщение об ошибке, как: не может использовать часть ПИК pic.comments пройти.
Когда я использую оператор обновления, как:
profile.update({"username":recepient,"pic._id":id},{$set:{"comments":{"author":user,"data":comment,"postedAt":new Date()}}},function(err,data){
if (err){
throw err;
}else{
console.log(data);
res.status(200).json({status:"Added successfully"});
}
Я не получаю сообщение об ошибке, но стоимость не получает добавлено.
Есть ли ошибка с оператором обновления или схемой?
Здесь база данных определяется в отдельном файле. Оттуда я экспортирую модуль profileSchema. Этот экспорт теперь используется и в других местах, например, для проверки подлинности паспорта. Поэтому, когда я пишу два экспортных оператора в файле базы данных, я получаю сообщение об ошибке в функции аутентификации паспорта. Потому что там «требуется» файл, откуда вызывается экспортированный модуль. Любая идея для этого? –