在將數據插入數據庫之前,我計劃創建一個帶有_id
的文檔。 我想用Meteor.uuid()
(這在理論上總是返回unique id
)生成此_id
但我覺得在這下面git issue在流星冒險中使用自定義_id嗎?
謝謝,好抓。之所以沒有記錄是因爲 我們最終希望從字符串
_ids
轉移到本地二進制 Mongo_ids
。既然它在一個例子中使用過,我認爲我們應該提前 並記錄下來,然後再過橋。我會這樣做
它似乎是一個字符串id和二進制mongo之間的區別。回到我的問題,是否有一個很好的理由,我應該避免使用我的自定義_id
?
問題是:爲什麼你需要一個自定義_id? –
我相信問題中的「註釋」是關於'Meteor.uuid()'當時沒有記錄的。流星使用的默認'_id'是並且仍然是一個隨機的(但是是唯一的)字符串。正如「註釋」所說,對「替代」的偏好是(現在仍然是)Mongo'ObjectId'格式,它具有唯一性。這一切都歸結爲「你的客戶能夠產生和處理什麼?「,如果它確實需要做這樣的事情,或者它是否僅僅依靠」服務器生成的「_id值,但是如果你有一些」自定義「的東西,那就是獨一無二的,那就使用它。流星沒有問題 –
@Michelem因爲我一直想命名我的_id「grandma」和「daddy」。 - 如果生成的有重複的插入將不起作用,或者我可能會調用upsert。服務器端。原因是我將文件存儲到具有_id名稱的文件夾中,因此我需要創建文檔,觀察ID,將文件複製到以此ID命名的文件夾中,然後僅標記文檔作爲「複製」,一次完成這樣做會更好,但它首先需要一個_id。 –