mongoose - Mongoose 嵌入式文档 ID 是否应该在父文档中是唯一的?

标签 mongoose

我有一个带有嵌入式文档数组的 Mongoose (3.6.1) 模式:

var document = new Schema({
    name: String,
    fileName: String,
    createDate: Default 
});
var transactionSchema = new Schema({
    name: String,
    documents:[document]
});

当我使用事务模式创建新事务然后使用 push() 添加文档时,与嵌入文档关联的文档 ID 在其他事务中是相同的。这可能不是问题,除非我将文档的内容存储在 gridFS 中并使用嵌入式文档 ID 作为唯一键。

有没有办法让 Mongoose 生成系统唯一 ID?

最佳答案

由于 Moongoose 似乎没有为嵌入文档创建 GUID,因此我从另一个角度解决了这个问题。我意识到 gridfs-stream 在存储文件时为文件创建了 _id。我将这些 _id 存储在我的嵌入式文档对象中,以便可以将与嵌入式文档关联的文件流式传输回用户。

关于mongoose - Mongoose 嵌入式文档 ID 是否应该在父文档中是唯一的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16700068/

相关文章:

javascript - 如何使用带有严格 : false schema? 的 mongoose 将字段添加到 mongoDB 文档中

api - 功能/集成测试 NodeJS ReST API 实现

node.js - Mongoose 文档 : Execute hook manually for testing

javascript - Mongoose 与 Supertest 的开放连接问题

javascript - javascript 函数怎么也可以是对象呢?

node.js - "pre"和 "post"删除中间件未触发

MongoDB 的 Javascript 设置日期

node.js - 在没有 $unwind 的情况下 $lookup 多个级别?

javascript - MongoDB 模式设计 - 巨大的列表

javascript - 如何双重查询两个 Mongoose 值?