如何覆盖猫鼬模型?

时间:2017-03-06 10:32:25

标签: node.js mongoose

我正在尝试动态渲染猫鼬模型并通过UI编辑字段,因此我需要覆盖一个猫鼬模型。我收到以下错误:

OverwriteModelError: Cannot overwrite `[MODEL NAME]` model once compiled.

如果我删除架构属性和模型对象

for (modelName in that.innstance.models) {
    // deletes the mongoose models and schema
    delete mongoose.models[modelName];
    delete mongoose.modelSchemas[modelName];

    delete app.models[modelName];
}

我能够再次注册模型,但是当我从模型对象创建时,我只能通过 MODEL._doc.some_field 访问属性而不是 MODEL.some_field

1 个答案:

答案 0 :(得分:0)

显然我做的方式很好, 当我重新加载我的模式时,有一个问题是正确的字段没有注册。所以它与我所做的无关。

如果有人想要覆盖模型,只是删除它将是正确的方法。