Ich versuche, das Feld _id des zuletzt eingegebenen Dokuments in die Sammlung zu bekommen.Erhalte ein gegebenes Feld aus dem neuesten Dokument in MongoDB
Ich habe eine Sammlung namens Zimmer erstellt:
Rooms = new Meteor.Collection('rooms');
und dieser Code sollte den letzten Punkt auf einen beschränkt erhalten:
Rooms.find({}, {fields: {'_id':1}}).sort({_id:-1}).limit(1)
stattdessen ich
Uncaught TypeError: Rooms.find(...).sort is not a function(…)
Wo gehe ich falsch?
Solution (dank @aedm)
var roomID = Rooms.findOne({}, {fields: {_id: 1}, sort: {_id: -1}});
return roomID._id.toString();
Das ist großartig! Gibt es eine Möglichkeit, um den Rohtext der ID zurückzugeben, anstatt ein Objekt wie es jetzt zurückgibt? – bafrick
Verwenden Sie 'myRoom._id.toString()'. – aedm
'myRoom._id' ist bereits eine Zeichenfolge, es ist nicht notwendig, sie zu übertragen. Auch '_id' ist * nicht nach Zeit sortiert * (es sei denn, Sie verwalten _id's selbst). Der native Meteor '_id' ist eine zufällige Zeichenfolge. –