gpt4 book ai didi

MongoDB 默认为严格模​​式

转载 作者:IT老高 更新时间:2023-10-28 13:16:48 26 4
gpt4 key购买 nike

我们有一个 nodejs + mongodb 应用程序已经在生产环境中运行了几年,并且在多台机器上进行开发。仅在一个开发人员的机器上,我看到了错误

MongoError: collection already exists

研究此错误表明,仅当集合处于严格模式时,才会在尝试创建现有集合时发生这种情况。我们不会在应用程序的任何地方调用 mongo 的严格模式,而且我们只能在一台机器上重现此错误。

导致此错误的代码如下:

var mongo = require('mongodb');
mongo.MongoClient.connect(config.mongoConnectionString, {w:1}, function(err, db) {
db.createCollection('accounts', function(err, collection) {
// "err" here is the error message.
});
});

有没有办法覆盖 mongo 的默认 strict: false 值?是否存在导致打开严格模式的全局配置选项?我宁愿不修改代码来为每个集合指定 strict: false 只是为了启用单个开发人员。开发者运行的是 mongo v3.2

最佳答案

您可以使用此禁用“严格”模式

var mongo = require('mongodb');
mongo.MongoClient.connect(config.mongoConnectionString, {w:1}, function(err, db) {
db.createCollection('accounts', {strict:false}, function(err, collection) {
// "err" here is the error message.
});
});

您可以从 here 了解更多信息

关于MongoDB 默认为严格模​​式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35072470/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com