Ich habe zwei Schemas, FinishedGame
und PlayingGame
. Beide Schemas sind identisch. Wenn ich ein Spiel schließe, möchte ich die PlayingGame
in die FinishedGame
Sammlung kopieren und dann die PlayingGame
löschen. Der Code scheint momentan keinen Fehler auszulösen, fügt aber auch nichts zu FinishedGame
hinzu. Wenn ich Shell öffne einen Lauf show collections
sehe ich nur playinggames
und system.indexes
. Jede Hilfe wird sehr geschätzt.Mongoose, Speichern des Ergebnisses einer Suche scheint nichts zu tun
Heres des Code, der ausgeführt wird, wenn ich ein Spiel schließen mag:
console.log('finding ', gameId);
PlayingGame.findById(gameId, function(err, game) {
if (err) {
console.log(err);
throw 'Problem finding game when closing';
}
console.log(game);
// if game found, move PlayingGame to FinishedGame emit game closed to room
if (game) {
console.log('Saving game to finished games');
var finishedGame = new FinishedGame(game);
finishedGame.save(function(err) {
if (err) throw 'Problem saving finished game when moving playing game to finished game';
console.log('Successfuly saved to finish game');
game.remove(function(err) {
if (err) throw 'Problem removing from playing games';
socket.leave('game:' + gameId);
// send message to room that the game has been closed
io.to('game:' + gameId).emit('game closed');
});
});
}
});
Vielleicht wird 'Spiel' nicht von ID gefunden? Siehst du in der Konsole die Meldung "Spiel zu fertigen Spielen speichern"? – alexmac
das funktionierte @JohnnyHK, wenn Sie die Antwort posten, kann ich es auswählen –