所以最近我有一个模型 customer.js ,该模型具有以下字段:
const customer = new schema({
name:String,
email:String,
age:Number,
});
几个月后,现在我在 description 中添加了新字段。我的问题是,是否要将这个新模型投入生产。它会如何影响我以前的模型以及使用旧模型创建的客户?恐怕如果将这个新产品投入生产,它会在UI控制台中引发错误description undefined
,因为老客户没有这样的字段描述?
答案 0 :(得分:2)
为避免破坏事物:
description
字段更新架构:const customer = new schema({
name: String,
email: String,
age: Number,
description: String,
});
db.collection.update(...)
以确保您不会破坏工作,并且每个客户都具有相同的架构:db.customers.updateMany(
{ description: { $exists: false } } // All the customers without a description
{ $set: { description: '' } } // Set the description field to an empty string
)