2013-05-11 8 views
5

Przeczytałem instrukcję MongoDB. Niektóre przykłady zawierają cytaty dotyczące kluczowych wartości, np. db.test.find({"_id" : 5}), a inne nie, np .: db.test.find({_id : 5})W mongodb, potrzebujesz cytatów wokół klawiszy dla operacji CRUD, przykład: "_id" vs _id?

Działają zarówno wersje cytowane, jak i nie cytowane. Ale zastanawiam się, czy istnieje tu kilka zniuansowanych różnic, o których nie wiem lub które są preferowanymi najlepszymi praktykami?

Dzięki.

Odpowiedz

10

W języku JavaScript (język powłoki MongoDB) są one traktowane dokładnie tak samo. Cytaty potrzebne, jednak gdy klucz zawiera kropkę jak wtedy, gdy używasz notacji dot dopasować przed polem osadzonym na przykład:

db.test.find({"name.last": "Jones"}) 

Mój preferencji jest, aby nie używać, chyba że cytuje” ponownie potrzebne.

+0

Dzięki! Prosty i jasny. Raczej nie używam cytatów. –

+1

Warto zauważyć, że dzieje się tak dlatego, że faktycznie wprowadzasz obiekt, a nie łańcuch JSON, jak niektórzy myślą. Zasadniczo nazywasz funkcję 'find()' z obiektem jako pierwszym parametrem. – Sammaye

Powiązane problemy