我目前在我的网址中使用 Mongodb ObjectIds,但我想改用这个模块: https ://github.com/dylang/shortid
但是现有的数据还没有这些数据。我怎样才能将它们全部迁移?我所看到的每一个地方,人们都在说您不需要在 noSQL 中迁移数据。
这是一个示例架构,我添加了“shortid”字段:
var ItemSchema = new Schema({
name : { type: String, required: true, trim: true }
, description: { type: String, trim: true }
, comments : [CommentSchema]
, shortid : { type: String, required: true }
});
我的意图是使用 /items/PPBqWA9 之类的网址,而不是 /items/508cbd80c0e1a44277000003
如果它不存在,我将有一个 .pre('save') 方法生成shortid。
或者,也许我可以将默认值设为调用 ShortId.generate() 的函数?
两个要求:1)永远不要更改它 2)追溯应用于现有对象。