Domanda

Sono bloccato cercando di capire se questo è possibile.

Utilizzando l'esempio blog da mangusta per dimostrare, tuttavia il mio caso uso effettivo è leggermente più complicato:

var Comments = new Schema({
    title     : String
  , body      : String
  , date      : Date
});

var BlogPost = new Schema({
    author    : ObjectId
  , title     : String
  , body      : String
  , date      : Date
  , comments  : [Comments]
});

var BlogPost = mongoose.model('BlogPost');
var post = new BlogPost();

Ho bisogno di creare un nuovo commento e restituire il nuovo Commento al cliente. Avendo commenti come documento incorporato è davvero comodo per me e funziona bene. Comunque io non voglio tornare ogni singolo commento al cliente ogni volta aggiungo uno nuovo.

post.comments.push({ title: 'My comment' });

Come sto utilizzando mangusta se potessi in qualche modo ottenere il id del nuovo commento che avrebbe aiutato e anche mi permetta di aggiungere altre funzionalità come ad esempio la modifica di un commento o eliminare un commento.

E 'l'unico modo per farlo è quello di avere commenti come la propria collezione?

È stato utile?

Soluzione

Credo che il problema si sta cercando di risolvere è quello di come aggiornare la pagina dopo i messaggi client un commento, giusto?

Quindi, si sta inserendo un nuovo commento. Questo significa che si hanno già i propri dati. Eseguire un inserto e restituire i dati al client. O, meglio ancora, restituire un semplice ACK, in quanto cliente ha anche dati completi di commento e può renderlo di per sé.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top