mongodb中object_id的唯一性

时间:2015-12-27 15:17:03

标签: node.js mongodb mongoose

mongo的集合中自生成的object_id是否在所有集合中都是唯一的?假设我的book_category集合,我必须让user_id获取所有用户保存的图书类别。

但是如何更新book_category的数据呢?我是否应该将user_id放入我的图书类别集合中?

module.exports.updateCategory = function(category_id,category,callback){
    var update = {
        name: category.category_name
    }

    Product_category.findOneAndUpdate({"_id":category_id},update,callback);
}

如果id在整个应用程序中都是unquie,则上面的代码工作正常。在我的案件中你会做什么?

1 个答案:

答案 0 :(得分:0)

每个图书都有一个ID和一个用户ID,但该ID足以唯一标识图书。您有两种常见的选择图书类别

它可以是一个由图书 ID和类别 ID组成的集合,以及唯一标识图书类别的ID。 类别 ID指向其他一些类别集合。如果您想要图书的所有类别,请按图书 ID进行查询。如果您想要某个类别的所有图书,请按类别 ID

进行查询

根据您的使用案例,您还可以简单地从每本书中提取一系列类别 ID。

在任何情况下,我都没有看到任何涉及用户ID的理由。我也没有看到任何交叉收集身份碰撞的可能性。