How can I create unique IDs for embedded documents in MongoDB?

前端 未结 6 556
北海茫月
北海茫月 2021-01-30 13:37

So I need to reference particular subdocuments uniquely from items in my collection. For instance:

User = {
    \'name\': \'jim\',
    \'documents: [
        {\         


        
6条回答
  •  佛祖请我去吃肉
    2021-01-30 14:06

    Yes, using mongo's ObjectId is the way to go. The only thing is: you have to generate them yourself, in the application code. They are meant to be globally unique, different workers won't generate two identical ObjectIds, so there's no race condition in that sense.

    All official drivers should provide a way to generate ObjectId. Here's how it is in Ruby:

    oid = BSON::ObjectId.new
    

提交回复
热议问题