2016-09-16 55 views
1

我想禁用在某些文档模型中删除文档。 内部文档前钩我可以做财产以后这样的:mongoose模型禁用删除

someSchema.pre('remove', function (next) { 
    let err = new Error('Delete docs is not allowed!'); 
    next(err); 
}); 

但除去仍然可以通过someModel.remove() 执行我怎样才能避免这种情况?

回答

0

的回答很简单:只需重写删除这样的乐趣:

let model = mongoose.model('doc', someDocSchema); 
model.remove = function() { 
    throw new Error('Delete docs is not allowed!'); 
}; 
+1

另外还有'findOneAndRemove','findByIdAndRemove'和'Model.find()删除()' – robertklep