1
나는 블로깅 시스템을 작성 중입니다. 이제 게시물에 대한 의견을 작성하고 있습니다.노드 + 몽고 : 컬렉션 내부의 배열에 레코드 추가하기
{
"topic": "Post Topic",
"post": "<p>\r\n\tPost text</p>\r\n",
"time_added": 1343167025,
"author": "Ashley Brooks",
"_id": {
"$oid": "500f1a315759c73805000001"
}
}
지금은이 게시물에 대한 댓글을 추가하고 싶습니다 : 여기에 모든 단일 게시물에 대한 스키마입니다. 나는 의견을 저장하는 가장 좋은 방법은 같은 떨어지게 가정하자 :
{
"topic": "Post Topic",
"post": "<p>\r\n\tPost text</p>\r\n",
"time_added": 1343167025,
"author": "Ashley Brooks",
"_id": {
"$oid": "500f1a315759c73805000001"
},
"comments" : [
{
"author":"James Brown",
"comment":"My awesome comment"
},
{
"author":"Jimmy White",
"comment":"And this is my comment"
}
]
}
내가 몽고에 대한 몇 가지 문서를 읽었습니다, 그러나 나는 새로운 코멘트를 추가하는 적절한 방법을 찾을 could'n. 이것은 내가 지금하고있는 방식입니다 :
exports.post = function(req, res) {
if (req.currentUser) {
db.collection("posts", function (err, collection) {
var obj_id = BSON.ObjectID.createFromHexString(req.params.id);
console.log(obj_id);
collection.findAndModify(
{_id: obj_id}, // query for a post
{$push: {
comments: [ {author: req.body.comment, name: "testname" } ]
}
},
function(err, object) {
if (err){
console.warn(err.message);
}else{
res.redirect('/');
}
});
});
} else {
res.redirect('/');
}
}};
그것은 나에게 같은 오류를 반환 내가 잘못
exception: must specify remove or update
을하고있어 무엇?
P. BTW, 나는 그것과 같은 독특한 ID 또는 smth와 별도의 코멘트를 표시하는 것이 좋을 것 같아요. 모든 추가 코멘트에 대해 obj_id 매개 변수를 추가하도록 Mongo를 지정하려면 어떻게해야합니까? 미리 감사드립니다.