Ich habe eine ziemlich komplexe db:Pushing in verschachtelter Subdokument Arrays in Mungo
var bookSchema = mongoose.Schema({
content: {
page: [pageSchema]
},
//otherThings
});
//my book has pages
var pageSchema = mongoose.Schema(
{
comments: [commentSchema]
},
{_id: false}
);
//comments have replies.
var commentSchema = mongoose.Schema({
comment: String,
replies: [this]
});
Ich versuche, eine Antwort auf einen Kommentar hinzuzufügen.
Ich habe die ID des Kommentars, auf den ich die Antwort hinzufügen möchte.
Aber wie?
Ich habe versucht:
Book.findOneAndUpdate(
{
'content.page.comments._id': ID
},
{
$push: {'content.page.$.comments.$.replies': myReply}
},
function (err) {
//...
}
)
Aber das ist unmöglich, weil ich eine Positions ($) mehr als einmal verwenden kann nicht.
Ich versuche, das jetzt stundenlang herauszufinden.
Irgendwelche Ratschläge?
erhalten aktualisiert.Dieser funktioniert nicht. sogar Comment.find ({_ id: ID}) gibt keine Dokumente zurück. Sogar Comment.find ({}) gibt keine Dokumente zurück. Ich wünschte, es hätte funktioniert. es schien so nett! –
Sie haben definitiv Probleme mit der Registrierung von Modellen, sollte es etwas zurückgeben –
wenn 'comment.find ({})' gibt nichts zurück, wie können sie in 'Bücher' Schema gespeichert werden? Es muss ein Problem in Ihrem Code sein. Kannst du es noch einmal überprüfen? –