[英]Meteor.Collection.ObjectID() vs MongoDB ObjectId()
為什么Meteor.js使用它自己的ID算法?
為什么不使用MongoDB的ObjectId()?
如果你選擇使用它,Meteor對對象id使用相同的方法:
Meteor.Collection.ObjectID()
與MongoDB的ObjectID
相同
它只是在Meteor.Collection
名稱下。 它使用EJSON將普通JSON中的對象id保存到客戶端。 因為基本上有2個帶有流星的數據庫
Minimongo
這是客戶端mongodb的一種緩存。 當瀏覽器加載時,數據從服務器上的主mongodb下載到此。 進行更改后,它們會被推送到服務器。
服務器MongoDB
這是服務器上10gen的原始mongodb
因此,由於這兩個數據庫,Meteor需要在Meteor.Collection
包含mongodb功能,並允許您在客戶端和服務器上使用相同的代碼。
默認情況下,meteor不會使用Object ID,它會使用一些隨機的字母數字文本。 這樣做是為了您可以輕松地在您的html屬性中的URL和ID中使用ID。
如果您使用new Meteor.Collection.ObjectID()
您將獲得一個ObjectID
對象,該對象將在服務器端使用mongodb的ObjectID規范。 對象ID中的時間戳值不會被阻止,但這不應該造成任何傷害。
由於0.9.1 Meteor建議使用Mongo.ObjectID
而不是Meteor.Collection.ObjectID
。 基本上兩者都是一樣的。 檢查history.md以獲取命名約定的更多更改。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.