2014-07-01 8 views
14

Jeśli utworzysz dokument Mongo bezpośrednio w Mongo i chcesz uzyskać dostęp do tego samego dokumentu przez Meteor, jaki jest najlepszy sposób na wykonanie tego zadania?Meteor - Znajdź dokument z kolekcji poprzez Mongo ObjectId

Otrzymuję niezdefiniowany wynik, gdy próbuję uzyskać dostęp.

Jeśli utworzysz nowy dokument z Meteorytu, nie będzie on poprzedzał identyfikatorem obiektu ObjectId ("").

Każda pomoc zostanie bardzo doceniona.

Chcę po prostu znaleźć dokładny dokument dokładnie według ObjectId.

Odpowiedz

28

Zastosowanie Meteor.Collection.ObjectID:

var oid = new Meteor.Collection.ObjectID("a86ce44f9a46b99bca1be7a9"); 
var doc = SomeCollection.findOne(oid); 

Zobacz options for how unique IDs in collections are generated. Jednak w Meteor jest ogólna praktyka polegająca na użyciu metody łańcuchowej, ponieważ klienci mogą wtedy niezawodnie generować unikalne identyfikatory.

+0

Dzięki! To działało świetnie. Nie zdawałem sobie sprawy, że potrzebuję stworzyć nową lokalną kolekcję, która popchnie Mongo ObjectID, zanim będę mógł sprawdzić inne kolekcje. – jremi

+0

@jremi nie wiesz co masz na myśli. –

+0

Nie zdawałem sobie sprawy, że muszę utworzyć nową zmienną, aby powiązać ObjectID przed przejściem do znalezionego połączenia. Próbowałem przekazać ObjectId bezpośrednio do findOne i miałem problemy. Teraz wszystko działa. – jremi

Powiązane problemy