MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Meteor.Collection.ObjectID() vs MongoDB ObjectId()


O Meteor usa o mesmo método para ids de objetos se você optar por usá-lo:

Meteor.Collection.ObjectID() é igual ao ObjectID do MongoDB

Está logo abaixo do Meteor.Collection nome. Ele usa EJSON para manter ids de objetos em JSON comum para o cliente final. Porque basicamente existem 2 bancos de dados com meteoro

Minimongo

Este é um tipo de cache do mongodb no cliente. Os dados são baixados do mongodb principal no servidor para este quando o navegador é carregado. Quando as alterações são feitas, elas são enviadas para o servidor.

Servidor MongoDB

Este é o mongodb original da 10gen no servidor

Então, por causa desses dois bancos de dados, o Meteor precisa envolver a funcionalidade do mongodb em Meteor.Collection e permitir que você use o mesmo código no cliente e no servidor.

Por padrão, o meteoro não usará IDs de objeto, usará uma espécie de texto alfanumérico aleatório. Isso é feito para que você possa facilmente usar IDs em seus URLs e IDs em seus atributos html.

Se você usar new Meteor.Collection.ObjectID() você receberá um ObjectID objeto que usará a especificação de ObjectID do mongodb na extremidade do servidor. O valor do carimbo de data/hora no ID do objeto não é mantido, mas isso não deve causar nenhum dano.